क्वेरी का उपयोग करके SQL सर्वर में तालिका बनाने के लिए:
- SQL सर्वर प्रबंधन स्टूडियो में, नई क्वेरी . पर क्लिक करें टूलबार पर बटन
- एक
CREATE TABLE
टाइप या पेस्ट करें स्क्रिप्ट (नीचे उदाहरण) - क्लिक करें! निष्पादित करें टूलबार पर बटन
यहां एक उदाहरण दिया गया है:
टेबल बनाएं स्क्रिप्ट
यहाँ ऊपर के उदाहरण में SQL स्क्रिप्ट है:
CREATE TABLE Status( StatusId int IDENTITY(1,1) NOT NULL, StatusName varchar(50) NOT NULL, DateCreated datetime NOT NULL CONSTRAINT DF_Status_DateCreated DEFAULT (getdate()), CONSTRAINT PK_Status PRIMARY KEY CLUSTERED (StatusId) )पूर्व>
स्क्रिप्ट निम्न कार्य करती है:
- टेबल बनाता है
- 3 कॉलम जोड़ता है
- अपना डेटा प्रकार सेट करता है
- निर्दिष्ट करता है कि StatusId एक पहचान कॉलम है और पहले रिकॉर्ड का मान 1 होगा और प्रत्येक बाद के रिकॉर्ड का मान 1 से बढ़ जाएगा
- निर्दिष्ट करता है कि StatusName कॉलम में किसी भी मान की अधिकतम लंबाई 50 हो सकती है
- निर्दिष्ट करता है कि NULL मानों की अनुमति नहीं है
- DateCreated कॉलम के लिए वर्तमान तिथि का डिफ़ॉल्ट मान सेट करता है
- StatusId फ़ील्ड को प्राथमिक कुंजी के रूप में सेट करता है
यह एक मूल स्क्रिप्ट है जो केवल एक छोटी तालिका बनाती है। आप उतनी ही आसानी से एक स्क्रिप्ट चला सकते हैं जो एक संपूर्ण डेटाबेस बनाता है, जिसमें उसके सभी ऑब्जेक्ट और डेटा और अनुमतियाँ एक ही बार में होती हैं।
स्क्रिप्ट में सुधार करना
डेटाबेस ऑब्जेक्ट बनाते समय, यह देखना अच्छा होता है कि ऑब्जेक्ट पहले से मौजूद है या नहीं। यह तब होने वाली त्रुटियों को रोकता है जब स्क्रिप्ट डेटाबेस में पहले से मौजूद तालिका बनाने का प्रयास करती है।
केवल तभी चलाएं जब तालिका पहले से मौजूद न हो
निम्नलिखित पंक्ति को उपरोक्त स्क्रिप्ट में जोड़ा जा सकता है, ताकि, तालिका बनाएँ स्क्रिप्ट केवल तभी चलेगी जब तालिका पहले से डेटाबेस में मौजूद न हो (या समान नाम वाली तालिका):
IF NOT EXISTS (SELECT * FROM sysobjects WHERE name='Status' AND xtype='U')
तो पूरी स्क्रिप्ट बन जाएगी:
IF NOT EXISTS (SELECT * FROM sysobjects WHERE name='Status' AND xtype='U') CREATE TABLE Status( StatusId int IDENTITY(1,1) NOT NULL, StatusName varchar(50) NOT NULL, DateCreated datetime NOT NULL CONSTRAINT DF_Status_DateCreated DEFAULT (getdate()), CONSTRAINT PK_Status PRIMARY KEY CLUSTERED (StatusId) )
टेबल को पहले से मौजूद होने पर बदलें
यदि तालिका पहले से मौजूद है तो उसे बदलने के लिए स्क्रिप्ट को फिर से लिखा जा सकता है। यह पहले मौजूदा तालिका को छोड़कर, फिर नई तालिका बनाकर किया जा सकता है।
एसक्यूएल सर्वर 2016
SQL सर्वर 2016 ने DROP IF EXISTS क्लॉज पेश किया। तो SQL सर्वर 2016 में, हम निम्नलिखित को स्क्रिप्ट के शीर्ष पर जोड़ सकते हैं:
DROP TABLE IF EXISTS [TaskTracker].[Status]
(टास्कट्रैकर डेटाबेस का नाम है। स्थिति तालिका का नाम है)।
DROP TABLE IF EXISTS [TaskTracker].[Status] CREATE TABLE Status( StatusId int IDENTITY(1,1) NOT NULL, StatusName varchar(50) NOT NULL, DateCreated datetime NOT NULL CONSTRAINT DF_Status_DateCreated DEFAULT (getdate()), CONSTRAINT PK_Status PRIMARY KEY CLUSTERED (StatusId) )
SQL सर्वर 2014 और पहले
यदि SQL सर्वर के पुराने संस्करण का उपयोग कर रहे हैं, तो आप मौजूदा तालिका को छोड़ने के लिए निम्न का उपयोग कर सकते हैं:
IF EXISTS (SELECT * FROM sysobjects WHERE name='Status' AND xtype='U') DROP TABLE Status
तो पूरी स्क्रिप्ट बन जाएगी:
IF EXISTS (SELECT * FROM sysobjects WHERE name='Status' AND xtype='U') DROP TABLE Status CREATE TABLE Status( StatusId int IDENTITY(1,1) NOT NULL, StatusName varchar(50) NOT NULL, DateCreated datetime NOT NULL CONSTRAINT DF_Status_DateCreated DEFAULT (getdate()), CONSTRAINT PK_Status PRIMARY KEY CLUSTERED (StatusId) )
मौजूदा टेबल से स्क्रिप्ट बनाना
आप SSMS GUI में ऑब्जेक्ट एक्सप्लोरर के माध्यम से किसी मौजूदा तालिका से SQL स्क्रिप्ट उत्पन्न कर सकते हैं। जब आप ऐसा करते हैं, तो SQL सर्वर तालिका से सभी SQL कोड उत्पन्न करता है और स्क्रिप्ट बनाता है।
ऐसा करने के लिए, बस तालिका पर राइट-क्लिक करें और स्क्रिप्ट तालिका इस रूप में... चुनें फिर संकेतों का पालन करें।
यह केवल तालिकाओं तक ही सीमित नहीं है - आप उसी विधि का उपयोग करके किसी भी डेटाबेस ऑब्जेक्ट को स्क्रिप्ट कर सकते हैं।
यदि आप SQL स्क्रिप्ट बनाने के लिए नए हैं, तो आप GUI का उपयोग करके तालिका बनाने का प्रयास कर सकते हैं, फिर तालिका से SQL स्क्रिप्ट जेनरेट कर सकते हैं।