Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> MySql

क्या "टेबल टेबल बनाएं" MySQL में काम करेगा क्योंकि हम आरक्षित शब्दों को टेबल नाम के रूप में उपयोग नहीं कर सकते हैं?


आइए पहले एक केस देखें जिसमें हम टेबल बनाते समय "क्रिएट टेबल टेबल" का इस्तेमाल करते हैं। एक त्रुटि उत्पन्न होगी -

mysql> टेबल टेबल बनाएं (Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName varchar(100));

यह निम्न आउटपुट यानी त्रुटि उत्पन्न करेगा -

ERROR 1064 (42000):आपको अपने SQL सिंटैक्स में त्रुटि है; लाइन 1
पर 'टेबल (Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName varchar(100))' के पास उपयोग करने के लिए सही सिंटैक्स के लिए अपने MySQL सर्वर संस्करण से संबंधित मैनुअल की जाँच करें।

जैसा कि आप ऊपर देख सकते हैं, शब्द “तालिका” एक आरक्षित कीवर्ड है, और हम इसे तालिका के नाम के रूप में उपयोग नहीं कर सकते हैं। इसलिए, इसे ठीक करने के लिए, आपको बैकटिक्स का उपयोग करके तालिका के नाम को लपेटना होगा।

चलिए फिर से टेबल बनाते हैं और बैकटिक्स के साथ टेबल का नाम `टेबल` के रूप में सेट करते हैं -

mysql> टेबल 'टेबल' बनाएं (आईडी नॉट न्यूल AUTO_INCREMENT PRIMARY KEY, FirstName varchar(100));क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.81 सेकंड)

इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें -

mysql> `टेबल` (फर्स्टनाम) मान ('क्रिस') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.15 सेकंड) mysql> `टेबल` (फर्स्टनाम) मानों ('रॉबर्ट') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.15 सेकंड) mysql> `टेबल` (फर्स्टनाम) मान ('डेविड') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.15 सेकंड) mysql> `टेबल` (फर्स्टनाम) मानों ('माइक') में डालें;क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.13 सेकंड)

चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें -

mysql> `टेबल` से *चुनें;

यह निम्नलिखित आउटपुट देगा -

<पूर्व>+----+-----------+| आईडी | प्रथम नाम |+----+-----------+| 1 | क्रिस || 2 | रॉबर्ट || 3 | डेविड || 4 | माइक |+----+-----------+4 पंक्तियों में सेट (0.00 सेकंड)
  1. MySQL में तालिका नाम के रूप में अंडरस्कोर संभव है?

    हां, हम टेबल नाम के चारों ओर बैकटिक्स का उपयोग करके अंडरस्कोर को टेबल नाम के रूप में जोड़ सकते हैं। निम्नलिखित वाक्य रचना है - INSERT INTO `yourTableName` values(yourValue1,.......N); आइए पहले एक टेबल बनाएं - mysql> create table `DemoTable_1` (    Id int NOT NULL AUTO_INCREMENT PRIMARY

  1. क्या हम आरक्षित शब्द 'इंडेक्स' का उपयोग MySQL कॉलम नाम के रूप में कर सकते हैं?

    हां, लेकिन आपको आरक्षित शब्द (इंडेक्स) में एक बैकटिक प्रतीक जोड़ने की जरूरत है ताकि इसे कॉलम नाम के रूप में उपयोग करते समय त्रुटि से बचा जा सके। आइए पहले एक टेबल बनाएं - तालिका बनाएं DemoTable(`index` int);क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.48 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रि

  1. MySQL में 2019 की तरह चालू वर्ष से एक गतिशील तालिका नाम बनाएं

    वर्ष (2019) जैसा टेबल नाम बनाने के लिए PREPARE स्टेटमेंट का उपयोग करें। आइए पहले एक टेबल बनाएं - तालिका बनाएं DemoTable1959 (उपयोगकर्ता नाम varchar(20));क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.00 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - सम्मिलित करें DemoTable1959 मानों में (