TOP

SQL-पाठ 14. तालिकाएँ बनाना (CREATE TABLE)

SQL भाषा का उपयोग न केवल सूचनाओं को संसाधित करने के लिए किया जाता है, बल्कि डेटाबेस और तालिकाओं के साथ सभी कार्यों को करने के लिए भी किया जाता है, जिसमें तालिकाएँ बनाना और उनके साथ काम करना भी शामिल है।

तालिकाएँ बनाने के दो तरीके हैं:

  • विज़ुअल इंटरफ़ेस - अधिकांश DBMS में इंटरैक्टिव टेबल निर्माण और प्रबंधन के लिए एक विज़ुअल इंटरफ़ेस होता है;
  • SQL कथन - सीधे SQL कथन का उपयोग करके तालिकाओं में हेरफेर किया जा सकता है।
  • यह ध्यान देने योग्य है कि जब आप DBMS इंटरैक्टिव टूलकिट का उपयोग करते हैं, तो वास्तव में, सारा काम SQL स्टेटमेंट द्वारा किया जाता है, यानी इंटरफ़ेस स्वयं उपयोगकर्ता के लिए अदृश्य रूप से इन कमांड को बनाता है (यह Excel में मैक्रो रिकॉर्ड करने के समान है, जब मैक्रो रिकॉर्डर आपके कार्यों को रिकॉर्ड करता है और उन्हें VBA कमांड में बदल देता है)।


    1. तालिकाओं का निर्माण

    प्रोग्रामेटिक रूप से तालिकाएँ बनाने के लिए, ऑपरेटर CREATE TABLE का उपयोग करें। इसके लिए, आपको निम्नलिखित डेटा निर्दिष्ट करना होगा:

  • तालिका का नाम, जो कीवर्ड CREATE TABLE के बाद निर्दिष्ट है;
  • अल्पविराम द्वारा अलग किए गए तालिका स्तंभों के नाम और परिभाषाएँ;
  • कुछ DBMS में यह भी आवश्यक है कि तालिका का स्थान निर्दिष्ट किया जाए।
  • आइए एक नई तालिका बनाएं और इसे Customers नाम दें:

    CREATE TABLE Customers (
    ID             CHAR(10) NOT NULL Primary key,
    Custom_name    CHAR(25) NOT NULL,
    Custom_address CHAR(25) NULL,
    Custom_city    CHAR(25) NULL,
    Custom_Country CHAR(25) NULL,
    ArcDate        CHAR(25) NOT NULL, DEFAULT NOWO)
    

    हां, हम पहले नई तालिका का नाम निर्दिष्ट करते हैं, फिर कोष्ठक में हम उन स्तंभों को सूचीबद्ध करते हैं जिन्हें हम बनाएंगे, और उनके नाम एक ही तालिका में दोहराए नहीं जा सकते। कॉलम नामों के बाद, प्रत्येक फ़ील्ड के लिए डेटा प्रकार निर्दिष्ट किया जाता है (CHAR(10)), फिर हम इंगित करते हैं कि क्या फ़ील्ड में खाली मान हो सकते हैं (NULL या NOT NULL), और वह फ़ील्ड जो प्राथमिक कुंजी होगी (Primary key) भी निर्दिष्ट किया जाना चाहिए।

    SQL भाषा आपको प्रत्येक फ़ील्ड के लिए एक डिफ़ॉल्ट मान परिभाषित करने की भी अनुमति देती है, अर्थात, यदि उपयोगकर्ता किसी निश्चित फ़ील्ड के लिए कोई मान निर्दिष्ट नहीं करता है, तो यह स्वचालित रूप से DBMS द्वारा सेट किया जाएगा। CREATE TABLE ऑपरेटर के साथ कॉलम परिभाषित करते समय डिफ़ॉल्ट मान DEFAULT कीवर्ड द्वारा परिभाषित किया जाता है।

    2. तालिकाओं को अद्यतन करना

    SQL में टेबल बदलने के लिए ऑपरेटर ALTER TABLE का उपयोग किया जाता है। इस ऑपरेटर का उपयोग करते समय, आपको निम्नलिखित जानकारी दर्ज करनी चाहिए:

  • जिस तालिका का नाम हम बदलना चाहते हैं;
  • उन परिवर्तनों की सूची जो हम करना चाहते हैं।
  • उदाहरण के लिए, आइए तालिका Sellers में एक नया कॉलम जोड़ें, जिसमें हम विक्रेता का फ़ोन निर्दिष्ट करेंगे:

    ALTER TABLE Sellers  
    ADD Phone CHAR (20)
    

    कॉलम जोड़ने के अलावा हम उन्हें हटा भी सकते हैं। आइए अब Phone फ़ील्ड को हटाएँ। ऐसा करने के लिए, हम निम्नलिखित क्वेरी लिखेंगे:

    ALTER TABLE Sellers 
    DROP COLUMN Phone
    

    3. तालिकाएँ हटाना

    तालिकाएँ DROP TABLE ऑपरेटर का उपयोग करके हटा दी जाती हैं। Sellers_new तालिका को हटाने के लिए, हम निम्नलिखित क्वेरी लिख सकते हैं:

    DROP TABLE Sellers_new
    

    कई DBMS में ऐसे नियम होते हैं जो उन तालिकाओं को हटाने से रोकते हैं जो पहले से ही अन्य तालिकाओं से जुड़ी हुई हैं। यदि ये नियम लागू होते हैं और आप ऐसी तालिका को हटा देते हैं, तो DBMS संबंध हटाए जाने तक हटाने की कार्रवाई को अवरुद्ध कर देता है। ऐसे उपाय आवश्यक तालिकाओं के आकस्मिक विलोपन को रोकते हैं।