ENUM डेटा टाइप के कॉलम में नया मान जोड़ने के लिए ALTER MODIFY कमांड का उपयोग करें।
मौजूदा ENUM मानों को बनाए रखने के लिए, नया मान जोड़ते समय मौजूदा सभी मानों को मैन्युअल रूप से लिखना पड़ता है।
सिंटैक्स
ALTER TABLE yourTableName
MODIFY COLUMN yourEnumColumnName
ENUM('existingValue1', 'existingValue2', ... N, 'newValue1', 'newValue2', ... N);
उदाहरण के साथ समझें
सबसे पहले एक टेबल बनाते हैं:
mysql> CREATE TABLE AddingNewValueToEnumColumn (
-> Id INT NOT NULL AUTO_INCREMENT,
-> Colors ENUM('RED', 'GREEN', 'BLUE'),
-> PRIMARY KEY(Id)
-> );
Query OK, 0 rows affected (0.64 sec)
टेबल का DDL जांचें
mysql> SHOW CREATE TABLE AddingNewValueToEnumColumn\G
आउटपुट
Table: AddingNewValueToEnumColumn
Create Table: CREATE TABLE `addingnewvaluetoenumcolumn` (
`Id` int(11) NOT NULL AUTO_INCREMENT,
`Colors` enum('RED','GREEN','BLUE') DEFAULT NULL,
PRIMARY KEY (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
ENUM कॉलम 'Colors' में मान 'RED', 'GREEN', 'BLUE' हैं। नए मान 'YELLOW', 'ORANGE', 'PINK' जोड़ते हैं:
mysql> ALTER TABLE addingnewvaluetoenumcolumn
-> MODIFY COLUMN Colors
-> ENUM('RED', 'GREEN', 'BLUE', 'YELLOW', 'ORANGE', 'PINK');
Query OK, 0 rows affected (0.17 sec)
Records: 0 Duplicates: 0 Warnings: 0
परिवर्तन सत्यापित करें
mysql> DESC AddingNewValueToEnumColumn;
आउटपुट
+--------+-----------------------------------------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------+-----------------------------------------------------+------+-----+---------+----------------+
| Id | int(11) | NO | PRI | NULL | auto_increment |
| Colors | enum('RED','GREEN','BLUE','YELLOW','ORANGE','PINK') | YES | | NULL | |
+--------+-----------------------------------------------------+------+-----+---------+----------------+
2 rows in set (0.00 sec)
नए मान सफलतापूर्वक ENUM में जुड़ गए हैं।