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

기존 MySQL 테이블에 새 열거형 열을 추가하시겠습니까?

<시간/>

기존 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입니다.