MySQL में AFTER या FIRST कीवर्ड का उपयोग करके किसी मौजूदा टेबल में विशिष्ट स्थान पर नया कॉलम जोड़ें।
सिंटैक्स
-- किसी कॉलम के बाद जोड़ने के लिए ALTER TABLE yourTableName ADD COLUMN yourColumnName dataType AFTER existingColumnName; -- पहले कॉलम के रूप में जोड़ने के लिए ALTER TABLE yourTableName ADD COLUMN yourColumnName dataType FIRST;
उदाहरण
मौजूदा टेबल बनाना
mysql> create table changeColumnPosition ( -> Id_Position1 int, -> Name_Position2 varchar(100), -> Address_Position4 varchar(200) -> ); Query OK, 0 rows affected (0.53 sec)
वर्तमान संरचना देखना
mysql> desc changeColumnPosition;
+-------------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------------+--------------+------+-----+---------+-------+ | Id_Position1 | int(11) | YES | | NULL | | | Name_Position2 | varchar(100) | YES | | NULL | | | Address_Position4 | varchar(200) | YES | | NULL | | +-------------------+--------------+------+-----+---------+-------+
Name_Position2 के बाद Age_Position3 जोड़ना
mysql> alter table changeColumnPosition -> add Age_Position3 int after Name_Position2; Query OK, 0 rows affected (1.34 sec)
अपडेट की गई संरचना देखना
mysql> desc changeColumnPosition;
+-------------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------------+--------------+------+-----+---------+-------+ | Id_Position1 | int(11) | YES | | NULL | | | Name_Position2 | varchar(100) | YES | | NULL | | | Age_Position3 | int(11) | YES | | NULL | | | Address_Position4 | varchar(200) | YES | | NULL | | +-------------------+--------------+------+-----+---------+-------+
अन्य उपयोगी कमांड
-- FIRST का उपयोग करके पहले स्थान पर जोड़ें ALTER TABLE table_name ADD COLUMN new_col INT FIRST; -- कॉलम हटाने के लिए ALTER TABLE table_name DROP COLUMN column_name; -- कॉलम का नाम और प्रकार बदलने के लिए ALTER TABLE table_name CHANGE old_name new_name VARCHAR(200);
ध्यान दें
- बड़े टेबल पर
ALTER TABLEधीमा हो सकता है (टेबल रीबिल्ड होता है) - उत्पादन डेटाबेस पर पीक घंटों में न चलाएं
- कॉलम क्रम तार्किक होता है, भौतिक संग्रहण क्रम नहीं