기존 MySQL 테이블에 새 열거형 열을 추가하려면 ALTER 명령을 사용할 수 있습니다. 다음은 구문입니다:
ALTER TABLE yourTableName ADD yourColumnName ENUM('yourValue1','yourValue2’....N) NOT NULL;
먼저 테이블을 생성해 보겠습니다.
mysql> create table DemoTable ( StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentName varchar(200), StudentAge int ); Query OK, 0 rows affected (0.62 sec)
DESC 명령을 사용하여 테이블 설명 확인:
mysql> DESC DemoTable;
그러면 다음과 같은 출력이 생성됩니다.
+-------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------------+--------------+------+-----+---------+----------------+ | StudentId | int(11) | NO | PRI | NULL | auto_increment | | StudentName | varchar(200) | YES | | NULL | | | StudentAge | int(11) | YES | | NULL | | +-------------+--------------+------+-----+---------+----------------+ 3 rows in set (0.01 sec)
다음은 기존 테이블에 새로운 enum 컬럼을 추가하는 쿼리이다. 학생 성별로 설정했습니다:
mysql> ALTER TABLE DemoTable ADD StudentGender ENUM('Male','Female') NOT NULL; Query OK, 0 rows affected (0.40 sec) Records: 0 Duplicates: 0 Warnings: 0
테이블에 대한 설명을 다시 한 번 확인해 보겠습니다.
mysql> desc DemoTable;
그러면 다음 출력이 생성되고 GENDER에 대한 열거형 값도 표시됩니다.
+---------------+-----------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +---------------+-----------------------+------+-----+---------+----------------+ | StudentId | int(11) | NO | PRI | NULL | auto_increment | | StudentName | varchar(200) | YES | | NULL | | | StudentAge | int(11) | YES | | NULL | | | StudentGender | enum('Male','Female') | NO | | NULL | | +---------------+-----------------------+------+-----+---------+----------------+ 4 rows in set (0.00 sec)
위의 샘플 출력을 보면 StudentGender 열의 데이터 유형이 ENUM입니다.