Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL에서 데이터 유형 열거형의 열에 새 값을 추가하시겠습니까?

<시간/>

ALTER MODIFY 명령을 사용하여 열거형 데이터 유형의 열에 새 값을 추가할 수 있습니다.

enum의 기존 값을 원하면 enum 데이터 타입의 컬럼에 새로운 값을 추가할 때 기존 enum 값을 수동으로 작성해야 합니다.

구문은 다음과 같습니다 -

ALTER TABLE yourTableName MODIFY COLUMN yourEnumColumnName
ENUM('yourExistingValue1','yourExistingValue2',........N,'yourNewValue1',’yourNewValue2’,.....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을 확인하려면 show create 명령어를 사용합니다. 쿼리는 다음과 같습니다 -

mysql> show create table AddingNewValueToEnumColumn\G
표시

다음은 출력입니다 -

*************************** 1. row ***************************
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 COLLATE = utf8mb4_0900_ai_ci
1 row in set (0.00 sec)

값이 'RED', 'GREEN', 'BLUE'인 열거형 열 'Colors'를 보고 다른 값을 원하면 위에서 설명한 대로 ALTER 명령을 사용합니다.

이제 'YELLOW', 'ORANGE', 'PINK'와 같은 새 값을 추가해 보겠습니다. 다음은 열거 열 'Colors' -

에 새 값을 추가하는 쿼리입니다.
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

값이 추가되었는지 여부를 확인하려면 테이블의 설명을 확인하십시오. 구문은 다음과 같습니다 -

DESC yourTableName;

DESC를 사용하여 'addingnewvaluetoenumcolumn' 테이블의 설명을 확인하십시오 -

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)