MySQL परिवर्तन एकाधिक फ़ील्ड स्थिति बढ़ाने के लिए जोड़ता है? संशोधित कॉलम स्टेटमेंट के उपयोग की विस्तृत व्याख्या

MySQL एकाधिक फ़ील्ड स्थिति बढ़ाने के लिए जोड़ें बदलें? संशोधित कॉलम स्टेटमेंट के उपयोग की विस्तृत व्याख्या

MySQL आदेश बदलें

जब हमें डेटा तालिका के नाम को संशोधित करने या डेटा तालिका फ़ील्ड को संशोधित करने की आवश्यकता होती है, तो हमें MySQL ALTER कमांड का उपयोग करने की आवश्यकता होती है।

इस ट्यूटोरियल को शुरू करने से पहले, आइए एक टेबल बनाएं जिसका नाम है: testalter_tbl.

root@host# mysql -u root -p password;
Enter password:*******
mysql> use chenweiliang;
Database changed
mysql> create table testalter_tbl
    -> (
    -> i INT,
    -> c CHAR(1)
    -> );
Query OK, 0 rows affected (0.05 sec)
mysql> SHOW COLUMNS FROM testalter_tbl;
+-------+---------+------+-----+---------+-------+
| Field | Type    | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| i     | int(11) | YES  |     | NULL    |       |
| c     | char(1) | YES  |     | NULL    |       |
+-------+---------+------+-----+---------+-------+
2 rows in set (0.00 sec)

तालिका फ़ील्ड हटाएं, जोड़ें या संशोधित करें

निम्न आदेश ऊपर बनाई गई तालिका के i कॉलम को छोड़ने के लिए DROP क्लॉज के साथ ALTER कमांड का उपयोग करता है:

mysql> ALTER TABLE testalter_tbl  DROP i;

यदि डेटा तालिका में केवल एक फ़ील्ड शेष है, तो आप किसी फ़ील्ड को हटाने के लिए DROP का उपयोग नहीं कर सकते।

डेटा तालिका में कॉलम जोड़ने के लिए MySQL में ADD क्लॉज का उपयोग किया जाता है। निम्न उदाहरण i फ़ील्ड को तालिका testalter_tbl में जोड़ता है और डेटा प्रकार को परिभाषित करता है:

mysql> ALTER TABLE testalter_tbl ADD i INT;

उपरोक्त आदेश को निष्पादित करने के बाद, i फ़ील्ड स्वचालित रूप से डेटा तालिका फ़ील्ड के अंत में जुड़ जाती है।

mysql> SHOW COLUMNS FROM testalter_tbl;
+-------+---------+------+-----+---------+-------+
| Field | Type    | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| c     | char(1) | YES  |     | NULL    |       |
| i     | int(11) | YES  |     | NULL    |       |
+-------+---------+------+-----+---------+-------+
2 rows in set (0.00 sec)

यदि आपको नए क्षेत्र का स्थान निर्दिष्ट करने की आवश्यकता है, तो आप MySQL द्वारा प्रदान किए गए कीवर्ड FIRST का उपयोग कर सकते हैं (सेटपोजिशनिंगपहला कॉलम), फ़ील्ड नाम के बाद (फ़ील्ड के बाद सेट करें)।

निम्नलिखित ALTER TABLE कथन का प्रयास करें, और सफल निष्पादन के बाद, तालिका संरचना में परिवर्तन देखने के लिए SHOW COLUMNS का उपयोग करें:

ALTER TABLE testalter_tbl DROP i;
ALTER TABLE testalter_tbl ADD i INT FIRST;
ALTER TABLE testalter_tbl DROP i;
ALTER TABLE testalter_tbl ADD i INT AFTER c;

पहले और बाद में कीवर्ड केवल जोड़ें खंड में उपयोग किए जाते हैं, इसलिए यदि आप डेटा तालिका फ़ील्ड की स्थिति को रीसेट करना चाहते हैं, तो आपको फ़ील्ड को हटाने के लिए पहले DROP का उपयोग करना होगा और फिर फ़ील्ड जोड़ने और स्थिति सेट करने के लिए ADD का उपयोग करना होगा।


फ़ील्ड प्रकार और नाम संशोधित करें

यदि आपको फ़ील्ड प्रकार और नाम को संशोधित करने की आवश्यकता है, तो आप ALTER कमांड में मॉडिफाई या चेंज क्लॉज का उपयोग कर सकते हैं।

उदाहरण के लिए, फ़ील्ड c के प्रकार को CHAR(1) से CHAR(10) में बदलने के लिए, निम्न कमांड निष्पादित करें:

mysql> ALTER TABLE testalter_tbl MODIFY c CHAR(10);

चेंज क्लॉज के साथ, सिंटैक्स बहुत अलग है।चेंज कीवर्ड के तुरंत बाद उस फ़ील्ड का नाम है जिसे आप संशोधित करना चाहते हैं, और फिर नया फ़ील्ड नाम और प्रकार निर्दिष्ट करें।निम्नलिखित उदाहरण का प्रयास करें:

mysql> ALTER TABLE testalter_tbl CHANGE i j BIGINT;

mysql> ALTER TABLE testalter_tbl CHANGE j j INT;

ALTER TABLE का शून्य और डिफ़ॉल्ट मानों पर प्रभाव

जब आप किसी फ़ील्ड को संशोधित करते हैं, तो आप निर्दिष्ट कर सकते हैं कि क्या केवल शामिल करना है या डिफ़ॉल्ट मान सेट करना है या नहीं।

निम्न उदाहरण निर्दिष्ट करता है कि फ़ील्ड j NULL नहीं है और डिफ़ॉल्ट मान 100 है।

mysql> ALTER TABLE testalter_tbl 
    -> MODIFY j BIGINT NOT NULL DEFAULT 100;

यदि आप डिफ़ॉल्ट मान सेट नहीं करते हैं, तो MySQL स्वचालित रूप से फ़ील्ड को डिफ़ॉल्ट रूप से NULL पर सेट कर देगा।


फ़ील्ड डिफ़ॉल्ट मान संशोधित करें

आप किसी फ़ील्ड के डिफ़ॉल्ट मान को बदलने के लिए ALTER का उपयोग कर सकते हैं, निम्न उदाहरण आज़माएं:

mysql> ALTER TABLE testalter_tbl ALTER i SET DEFAULT 1000;
mysql> SHOW COLUMNS FROM testalter_tbl;
+-------+---------+------+-----+---------+-------+
| Field | Type    | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| c     | char(1) | YES  |     | NULL    |       |
| i     | int(11) | YES  |     | 1000    |       |
+-------+---------+------+-----+---------+-------+
2 rows in set (0.00 sec)

आप फ़ील्ड के डिफ़ॉल्ट मान को हटाने के लिए DROP क्लॉज के साथ ALTER कमांड का भी उपयोग कर सकते हैं, जैसा कि निम्न उदाहरण में है:

mysql> ALTER TABLE testalter_tbl ALTER i DROP DEFAULT;
mysql> SHOW COLUMNS FROM testalter_tbl;
+-------+---------+------+-----+---------+-------+
| Field | Type    | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| c     | char(1) | YES  |     | NULL    |       |
| i     | int(11) | YES  |     | NULL    |       |
+-------+---------+------+-----+---------+-------+
2 rows in set (0.00 sec)
Changing a Table Type:

डेटा तालिका प्रकार को संशोधित करने के लिए ALTER कमांड और TYPE क्लॉज का उपयोग किया जा सकता है।निम्नलिखित उदाहरण का प्रयास करें, जहां हम तालिका के प्रकार को testalter_tbl से MYISAM में बदलते हैं:

ध्यान दें:डेटा तालिका प्रकार देखने के लिए, आप SHOW TABLE STATUS कथन का उपयोग कर सकते हैं।

mysql> ALTER TABLE testalter_tbl ENGINE = MYISAM;
mysql>  SHOW TABLE STATUS LIKE 'testalter_tbl'\G
*************************** 1. row ****************
           Name: testalter_tbl
           Type: MyISAM
     Row_format: Fixed
           Rows: 0
 Avg_row_length: 0
    Data_length: 0
Max_data_length: 25769803775
   Index_length: 1024
      Data_free: 0
 Auto_increment: NULL
    Create_time: 2007-06-03 08:04:36
    Update_time: 2007-06-03 08:04:36
     Check_time: NULL
 Create_options:
        Comment:
1 row in set (0.00 sec)

तालिका का नाम संशोधित करें

यदि आपको डेटा तालिका के नाम को संशोधित करने की आवश्यकता है, तो आप ऐसा करने के लिए ALTER TABLE स्टेटमेंट में RENAME क्लॉज का उपयोग कर सकते हैं।

डेटा तालिका testalter_tbl का नाम बदलकर change_tbl करने के लिए निम्न उदाहरण आज़माएं:

mysql> ALTER TABLE testalter_tbl RENAME TO alter_tbl;

ALTER कमांड का उपयोग MySQL डेटा टेबल पर इंडेक्स बनाने और हटाने के लिए भी किया जा सकता है, जिसे हम अगले अध्यायों में पेश करेंगे।

अन्य उपयोगों को बदलें

स्टोरेज इंजन को संशोधित करें: इसे myisam में संशोधित करें

alter table tableName engine=myisam;

विदेशी कुंजी बाधा निकालें: keyName एक विदेशी कुंजी उपनाम है

alter table tableName drop foreign key keyName;

संशोधित क्षेत्र की सापेक्ष स्थिति: यहां नाम 1 संशोधित किया जाने वाला क्षेत्र है, टाइप 1 क्षेत्र का मूल प्रकार है, पहले और बाद में चुना जा सकता है, जो स्पष्ट होना चाहिए, पहले पहले रखा गया है, और नाम 2 के बाद रखा गया है खेत

alter table tableName modify name1 type1 first|after name2;

होप चेन वेइलियांग ब्लॉग ( https://www.chenweiliang.com/ ) साझा किया गया "MySQL एकाधिक फ़ील्ड पदों को बढ़ाने के लिए जोड़ता है? संशोधित कॉलम स्टेटमेंट के उपयोग की विस्तृत व्याख्या" आपके लिए मददगार है।

इस लेख का लिंक साझा करने के लिए आपका स्वागत है:https://www.chenweiliang.com/cwl-495.html

नवीनतम अपडेट प्राप्त करने के लिए चेन वेइलियांग के ब्लॉग के टेलीग्राम चैनल में आपका स्वागत है!

🔔 चैनल शीर्ष निर्देशिका में मूल्यवान "चैटजीपीटी कंटेंट मार्केटिंग एआई टूल उपयोग गाइड" प्राप्त करने वाले पहले व्यक्ति बनें! 🌟
📚 इस गाइड में बहुत महत्व है, 🌟यह एक दुर्लभ अवसर है, इसे न चूकें! ⏰⌛💨
अच्छा लगे तो शेयर और लाइक करें!
आपका साझा करना और पसंद करना हमारी निरंतर प्रेरणा है!

 

发表 评论

आपकी ईमेल आईडी प्रकाशित नहीं की जाएगी। आवश्यक फ़ील्ड का उपयोग किया जाता है * लेबल

शीर्ष तक स्क्रॉल करें