SQL सर्वर CREATE, ALTER, DROP टेबल [T-SQL उदाहरण]

⚡ स्मार्ट सारांश

SQL सर्वर टेबल डेटा को पंक्तियों और स्तंभों में संग्रहित करती हैं। Transact-SQL टेबल बनाने के लिए CREATE TABLE, स्तंभों को जोड़ने या बदलने के लिए ALTER TABLE और टेबल, उसके डेटा और उसकी संरचना को हटाने के लिए DROP TABLE का उपयोग करता है।

  • 🧱 टेबल क्या है? एक टेबल में डेटा पंक्तियों और स्तंभों में संग्रहित होता है और यह डेटाबेस में डेटा रखने के लिए मूलभूत ऑब्जेक्ट है।
  • तालिका बनाएं: CREATE TABLE स्टेटमेंट प्रत्येक कॉलम को एक नाम, एक डेटा प्रकार और एक NULL या NOT NULL सेटिंग के साथ परिभाषित करता है।
  • ???? मौजूदा से बनाएं: SELECT … INTO मौजूदा टेबल से चयनित कॉलम और पंक्तियों को एक बिल्कुल नई टेबल में कॉपी करता है।
  • तालिका में परिवर्तन: ALTER TABLE … ADD कमांड टेबल को दोबारा बनाए बिना उसमें नए कॉलम जोड़ता है।
  • ड्रॉप तालिका: DROP TABLE कमांड संपूर्ण टेबल को हटा देता है, जिसमें उसका डेटा और उसकी संरचना भी शामिल होती है।
  • टेबल डिज़ाइनर: SQL सर्वर मैनेजमेंट स्टूडियो टेबल डिज़ाइनर के माध्यम से टेबल को दृश्य रूप से बना और बदल भी सकता है।

SQL सर्वर में टेबल बनाने, बदलने और हटाने के तरीके (T-SQL उदाहरणों सहित)

टेबल क्या है?

एक टेबल एक ऑब्जेक्ट है SQL सर्वर जो डेटा को पंक्ति और स्तंभ प्रारूप में संग्रहीत करता है। नीचे दिया गया आरेख क्रमशः पंक्तियों और स्तंभों को दर्शाता है।

पंक्तियों और स्तंभों में डेटा संग्रहीत करने वाली तालिका का आरेख

T-SQL के साथ SQL सर्वर में टेबल कैसे बनाएं

डेटा को स्टोर करने का पहला चरण एक टेबल बनाना है। डेटाबेस जहां डेटा रहेगा। टेबल बनाने के बाद, आप उसमें पंक्तियाँ डालते रह सकते हैं।

आप निम्नलिखित तरीकों से टेबल बना सकते हैं:

  • T-SQL: सभी कॉलम और उनके डेटा प्रकार को परिभाषित करके एक नई तालिका बनाएं।
  • T-SQL: मौजूदा टेबल का उपयोग करके एक नई टेबल बनाएं।
  • टेबल डिज़ाइनर का उपयोग करना।

आइए इसका विस्तार से अध्ययन करें।

T-SQL: सभी कॉलम और उनके डेटा प्रकार को परिभाषित करके एक नई तालिका बनाएं

नीचे SQL सर्वर में टेबल बनाने का सिंटैक्स दिया गया है।

सिंटेक्स:

CREATE TABLE tableName
( 
  column_1 datatype [ NULL | NOT NULL ],
  column_2 datatype [ NULL | NOT NULL ],
  ...
);

यहाँ,

  • पैरामीटर tableName उस तालिका का नाम दर्शाता है जिसे आप बनाने जा रहे हैं।
  • पैरामीटर column_1, column_2… तालिका में जोड़े जाने वाले स्तंभों को दर्शाते हैं।
  • किसी कॉलम को या तो NULL या NOT NULL के रूप में निर्दिष्ट किया जाना चाहिए। यदि आप निर्दिष्ट नहीं करते हैं, तो SQL Server डिफ़ॉल्ट रूप से NULL लेता है।

आइए दो स्तंभों वाली एक बुनियादी तालिका बनाते हैं।

प्रश्न:

CREATE TABLE COURSE
(
Course_ID Int,
Course_Name Varchar(10)
)

पूर्व-आवश्यक: उस डेटाबेस का चयन करें जहां आपको तालिका बनानी है।

चरण 1) एक्ज़ीक्यूट पर क्लिक करके क्वेरी चलाएँ। क्वेरी चलाने से पहले, कोई टेबल मौजूद नहीं है, जैसा कि नीचे दिखाया गया है।

CREATE स्टेटमेंट चलने से पहले ऑब्जेक्ट एक्सप्लोरर में कोई कोर्स टेबल नहीं दिख रही है।

क्वेरी चलाने के बाद, रिफ्रेश बटन पर क्लिक करें; अब नई टेबल 'कोर्स' के रूप में मौजूद है, जैसा कि नीचे दिखाया गया है।

निष्पादन और रीफ़्रेश के बाद ऑब्जेक्ट एक्सप्लोरर में कोर्स टेबल सूचीबद्ध हो जाती है।

चरण 2) कुछ डेटा डालें। नीचे दिए गए स्क्रीनशॉट में नवनिर्मित कोर्स टेबल दिखाई गई है जो पंक्तियाँ प्राप्त करने के लिए तैयार है।

डेटा डालने से पहले ऑब्जेक्ट एक्सप्लोरर में नवनिर्मित कोर्स टेबल का चयन किया गया।

डेटा डालने से पहले पाठ्यक्रम तालिका की संरचना, जिसमें दो स्तंभ दिखाए गए हैं।

अभी तक टेबल मौजूद तो है, लेकिन उसमें अभी तक कोई डेटा नहीं है।

Transact-SQL तालिका में डेटा डालने के लिए INSERT स्टेटमेंट प्रदान करता है। इस स्टेटमेंट की मदद से आप तालिका में एक या एक से अधिक पंक्तियाँ डाल सकते हैं।

सिंटेक्स:

INSERT INTO tableName
(column_1, column_2, ... )
VALUES
(expression_1, expression_2, ... ),
(expression_1, expression_2, ... ),
...;

ऊपर दिया गया सिंटैक्स, VALUES कीवर्ड का उपयोग करके किसी टेबल में डेटा डालने के लिए कमांड के मूल रूप को दर्शाता है।

आइए INSERT कमांड का उपयोग करके चार पंक्तियाँ सम्मिलित करें।

Insert into COURSE values (1,'SQL');
Insert into COURSE values (2,'Python');
Insert into COURSE values (3,'SQL');
Insert into COURSE values (4,'C');

नीचे दिए गए स्नैपशॉट से पता चलता है कि चार पंक्तियों को सफलतापूर्वक सम्मिलित किया गया है।

संदेश फलक में पाठ्यक्रम तालिका में चार पंक्तियाँ सम्मिलित होने की पुष्टि दिखाई दे रही है।

चरण 3) डेटा देखने के लिए SELECT स्टेटमेंट का उपयोग करें। SQL सर्वर में डेटा देखने के लिए, निम्नलिखित सिंटैक्स का उपयोग करें:

SELECT expression
FROM tableName
[WHERE condition];

उदाहरण प्रश्न:

SELECT * FROM COURSE;

टेबल बन गई है और अब इसमें चार रिकॉर्ड हैं। ध्यान दें कि आप किसी भी कॉलम में डुप्लिकेट मान वाले रिकॉर्ड बना सकते हैं, क्योंकि कोई भी कॉलम डुप्लिकेट मानों से भरा नहीं है। की कमी.

SELECT द्वारा प्राप्त चार कोर्स पंक्तियों को दर्शाने वाला परिणाम ग्रिड

T-SQL: मौजूदा टेबल का उपयोग करके एक नई टेबल बनाएं

मान लीजिए कि आप ऊपर बनाई गई COURSE टेबल जैसी ही एक और टेबल चाहते हैं, लेकिन आपको केवल Course_Name कॉलम की आवश्यकता है, न कि Course_ID की।

सिंटेक्स:

SELECT (Column 1, …) INTO <New Table name> FROM <Old Table name>;

उदाहरण प्रश्न:

SELECT COURSE_NAME INTO COURSE_NAMES FROM COURSE;

चरण 1) क्वेरी को चलाने के लिए Execute पर क्लिक करें। नीचे दिखाए अनुसार, COURSE_NAMES नाम की एक नई टेबल बनाई जाएगी जिसमें एक कॉलम होगा और पुरानी टेबल से चार रिकॉर्ड कॉपी किए जाएंगे।

SELECT INTO का उपयोग करके मौजूदा टेबल से एक नई COURSE_NAMES टेबल बनाई गई।

उदाहरण प्रश्न:

SELECT * FROM COURSE_NAMES;

नीचे दिए गए परिणाम में नई COURSE_NAMES तालिका में मौजूद चार Course_Name रिकॉर्ड सूचीबद्ध हैं।

परिणाम ग्रिड COURSE_NAMES तालिका में Course_Name मानों को दर्शाता है।

टेबल डिज़ाइनर का उपयोग करना

आप इससे एक टेबल भी बना सकते हैं SQL सर्वर प्रबंधन स्टूडियो टेबल डिज़ाइनर का उपयोग करने वाला IDE।

चरण 1) नीचे दिखाए अनुसार, टेबल पर राइट-क्लिक करें > नया > टेबल चुनें।

ऑब्जेक्ट एक्सप्लोरर में टेबल पर राइट-क्लिक करें, फिर न्यू चुनें, फिर टेबल चुनें।

चरण 2) कॉलम के नाम दर्ज करें और जानकारी का प्रकारऔर यह चुनें कि प्रत्येक कॉलम में नल वैल्यू की अनुमति है या नहीं।

नई तालिका को परिभाषित करने के लिए टेबल डिज़ाइनर टूलबार

कॉलम नाम, डेटा प्रकार और नल मानों की अनुमति देने के विकल्पों के साथ टेबल डिज़ाइनर ग्रिड

चरण 3) टेबल को सेव करने के लिए CTRL+S दबाएं और नाम के रूप में Course_Title दर्ज करें।

नई तालिका को Course_Title के रूप में सहेजने के लिए Name डायलॉग चुनें

रिफ्रेश पर क्लिक करने के बाद, कोर्स_टाइटल नाम की एक नई तालिका दिखाई देती है, जिसमें कोर्स_नेम नामक एक कॉलम होता है, जैसा कि नीचे दिखाया गया है।

ऑब्जेक्ट एक्सप्लोरर में Course_Title टेबल में केवल एक Course_Name कॉलम है।

SQL सर्वर में तालिका बदलें

SQL सर्वर में किसी टेबल को बदलने के दो तरीके हैं:

  • T-SQL: नई कॉलम जोड़कर तालिका को परिवर्तित करें।
  • टेबल डिज़ाइनर का उपयोग करना।

T-SQL: कॉलम डालकर तालिका बदलें

नीचे SQL में ALTER कमांड का सिंटैक्स दिया गया है:

सिंटेक्स:

 Alter TABLE <Table name> ADD Column1 datatype, Column2 datatype;

प्रश्न:

ALTER TABLE dbo.Course_Title ADD Course_Duration VARCHAR(20);

चरण 1) क्वेरी को चलाने के लिए Execute पर क्लिक करें। अब Course_Title टेबल में Course_Duration नाम का एक नया कॉलम बन गया है, जैसा कि नीचे दिखाया गया है।

ALTER TABLE ADD स्टेटमेंट के माध्यम से Course_Duration कॉलम को जोड़ा गया है।

कोर्स_टाइटल कॉलम में हाल ही में जोड़ा गया कोर्स_ड्यूरेशन कॉलम भी शामिल है।

टेबल डिज़ाइनर का उपयोग करना

आप टेबल डिज़ाइनर का उपयोग करके यूआई से भी टेबल में बदलाव कर सकते हैं।

चरण 1) मौजूदा टेबल पर राइट-क्लिक करें > डिज़ाइन चुनें, जैसा कि नीचे दिखाया गया है।

Course_Title टेबल पर राइट-क्लिक करें और डिज़ाइन चुनें।

चरण 2) कॉलम का नाम Course_Start_Date रखें और उसका डेटा प्रकार चुनें।

टेबल डिज़ाइनर में Course_Start_Date कॉलम और उसके डेटा प्रकार को जोड़ना

चरण 3) नए जोड़े गए कॉलम को सेव करने के लिए CTRL+S दबाएँ। कोर्स_टाइटल टेबल में कोर्स_स्टार्ट_डेट नाम का एक नया कॉलम बन जाएगा, जैसा कि नीचे दिखाया गया है।

Course_Title टेबल में सहेजे गए Course_Start_Date कॉलम को दिखाया गया है।

SQL सर्वर में तालिका हटाएँ

जब किसी टेबल की आवश्यकता नहीं रह जाती है, तो उसे डिलीट कर दिया जाता है।

SQL सर्वर में टेबल को डिलीट करने के दो तरीके हैं:

  • SQL सर्वर मैनेजमेंट स्टूडियो का उपयोग करना।
  • T-SQL: DROP TABLE कमांड का उपयोग करके टेबल को डिलीट करें।

SQL सर्वर प्रबंधन स्टूडियो का उपयोग करना

चरण 1) मौजूदा टेबल पर राइट-क्लिक करें > कोर्स_टाइटल नामक टेबल को डिलीट करें, जैसा कि नीचे दिखाया गया है।

Course_Title टेबल पर राइट-क्लिक करें और Delete चुनें।

चरण 2) डिलीट ऑब्जेक्ट विंडो पर, ओके पर क्लिक करें।

ऑब्जेक्ट डिलीट करने की पुष्टि विंडो, जिसमें ओके बटन है

अब कोर्स_टाइटल टेबल को टेबल सूची से हटा दिया गया है, जैसा कि नीचे दिखाया गया है।

Course_Title टेबल को डिलीट करने के बाद ऑब्जेक्ट एक्सप्लोरर टेबल लिस्ट

टी-एसक्यूएल: टेबल हटाएं

नीचे टेबल को हटाने का सिंटैक्स दिया गया है।

सिंटेक्स:

DROP TABLE <tableName>;

पैरामीटर tableName उस तालिका का नाम है जिसे हटाया जाना है।

प्रश्न:

DROP TABLE COURSE_NAMES;

चरण 1) क्वेरी को चलाने के लिए Execute पर क्लिक करें। नीचे दिखाए अनुसार, COURSE_NAMES टेबल टेबल सूची से हटा दी जाएगी।

DROP TABLE स्टेटमेंट का उपयोग करके COURSE_NAMES टेबल को हटाया जाता है।

COURSE_NAMES टेबल को हटाने के बाद ऑब्जेक्ट एक्सप्लोरर टेबल सूची

वैकल्पिक रूप से, स्रोत में एक DELETE TABLE कमांड दिखाया गया है जिसका उद्देश्य केवल पंक्तियों (डेटा) को हटाना है जबकि तालिका संरचना को बरकरार रखना है, ताकि तालिका का बाद में पुन: उपयोग किया जा सके।

सिंटेक्स:

DELETE TABLE <Table name>;

नोट: मानक T-SQL में, पंक्तियों को इस प्रकार हटाया जाता है DELETE FROM <table>और एक टेबल जल्दी से खाली हो जाती है TRUNCATE TABLE <table>ऊपर दिखाए गए तरीके से DROP TABLE कमांड का उपयोग करके पूरी टेबल को हटा दिया जाता है।

रोचक तथ्य!

  • XML या छवियों जैसी बड़ी फ़ाइलों को VARBINARY(MAX), VARCHAR(MAX) या XML प्रकार जैसे बड़े ऑब्जेक्ट डेटा प्रकारों का उपयोग करके एक कॉलम में संग्रहीत किया जा सकता है (SQL सर्वर इसका उपयोग नहीं करता है)। Oracle-शैली BLOB और CLOB नाम)।
  • DELETE कमांड केवल पंक्तियों को हटाता है और इसे एक ट्रांज़ैक्शन के भीतर रोलबैक किया जा सकता है, जबकि DROP कमांड पूरी टेबल संरचना को हटा देता है; SQL सर्वर में, स्पष्ट ट्रांज़ैक्शन के भीतर चलने पर DROP को भी रोलबैक किया जा सकता है।

अक्सर पूछे जाने वाले प्रश्न

DELETE चयनित पंक्तियों को हटाता है और इसका पूरा रिकॉर्ड दर्ज किया जाता है। TRUNCATE सभी पंक्तियों को तुरंत हटा देता है और पहचान मानों को रीसेट कर देता है। DROP पूरी तालिका, उसके डेटा और उसकी संरचना को हटा देता है। SQL Server में, इन तीनों को एक स्पष्ट लेनदेन के भीतर रोलबैक किया जा सकता है।

SQL Server 2016 से उपलब्ध DROP TABLE IF EXISTS table_name फ़ंक्शन का उपयोग करें। यह मौजूद होने पर टेबल को हटा देता है और अनुपस्थित होने पर कुछ नहीं करता, जिससे त्रुटि से बचा जा सकता है। पुराने संस्करणों में, ड्रॉप करने से पहले OBJECT_ID की जाँच करें।ping.

SQL Server में RENAME TABLE स्टेटमेंट नहीं होता है। इसके बजाय, सिस्टम स्टोर्ड प्रोसीजर sp_rename चलाएँ, उदाहरण के लिए EXEC sp_rename 'old_name', 'new_name'। इसके बाद, निर्भर व्यू, प्रोसीजर और कोड को अपडेट करें, क्योंकि sp_rename उन संदर्भों को स्वचालित रूप से नहीं बदलता है।

जी हां। ALTER TABLE table ALTER COLUMN column new_type किसी कॉलम का डेटा प्रकार बदलता है, और ALTER TABLE table DROP COLUMN column उसे हटा देता है। यह परिवर्तन तभी सफल होता है जब मौजूदा डेटा संगत हो, इसलिए पहले रूपांतरणों का परीक्षण करें और बैकअप लें।

CREATE TABLE के अंदर ही प्रतिबंध परिभाषित करें, जैसे कि Course_ID INT PRIMARY KEY, या बाद में ALTER TABLE ADD CONSTRAINT का उपयोग करके उन्हें जोड़ें। प्राथमिक कुंजी विशिष्टता को लागू करता है, जबकि एक विदेशी कुंजी यह तालिकाओं में पंक्तियों को जोड़ता है।

# उपसर्ग वाली एक अस्थायी तालिका tempdb में बनाई जाती है और सत्र समाप्त होने पर स्वचालित रूप से हटा दी जाती है। एक नियमित तालिका तब तक स्थायी रहती है जब तक आप उसे हटा नहीं देते। अस्थायी तालिकाएँ बैच या प्रक्रिया के भीतर अल्पकालिक मध्यवर्ती परिणामों के लिए उपयुक्त होती हैं।

हां. गिटहब कोपिलॉट यह सामान्य भाषा के निर्देशों से CREATE, ALTER और DROP TABLE स्क्रिप्ट तैयार कर सकता है और कॉलम, डेटा प्रकार और बाधाओं का सुझाव दे सकता है। उत्पादन में चलाने से पहले हमेशा तैयार किए गए स्कीमा, कुंजियों और नल वैल्यू की समीक्षा करें।

कृत्रिम बुद्धिमत्ता और मशीन लर्निंग उपकरण नमूना डेटा और क्वेरी पैटर्न से टेबल संरचनाओं, डेटा प्रकारों और इंडेक्स की अनुशंसा करते हैं, अनावश्यक या अत्यधिक बड़े कॉलम को चिह्नित करते हैं, और जोखिम भरे DROP या ALTER ऑपरेशनों के बारे में चेतावनी देते हैं। डेवलपर प्रत्येक सुझाव को लागू करने से पहले उसकी पुष्टि करता है।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: