ALTER TABLE 문을 사용하여 기존 MySQL 테이블의 열에 UNIQUE 제약 조건을 적용할 수 있습니다.
구문
ALTER TABLE table_name MODIFY colum_name datatype UNIQUE; OR ALTER TABLE table_name ADD UNIQUE (colum_name);
예시
'Test4'라는 이름의 다음 테이블이 있고 'Name' 열에 UNIQUE 제약 조건을 추가하려는 경우 다음과 같이 ALTER TABLE 명령을 사용하여 수행할 수 있다고 가정합니다. -
mysql> DESCRIBE test4; +-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | ID | int(11) | YES | UNI | NULL | | | Name | varchar(20) | YES | | NULL | | +-------+-------------+------+-----+---------+-------+ 2 rows in set (0.04 sec) mysql> ALTER TABLE test4 MODIFY Name Varchar(20) UNIQUE; Query OK, 0 rows affected (0.22 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> DESCRIBE test4; +-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | ID | int(11) | YES | UNI | NULL | | | Name | varchar(20) | YES | UNI | NULL | | +-------+-------------+------+-----+---------+-------+ 2 rows in set (0.04 sec)
위의 결과 집합에서 MySQL이 'Name' 필드에 UNIQUE 제약 조건을 추가한 것을 관찰할 수 있습니다. 다음 쿼리로도 UNIQUE 제약 조건을 추가할 수 있습니다. −
mysql> Alter table test4 add UNIQUE(name); Query OK, 0 rows affected (0.16 sec) Records: 0 Duplicates: 0 Warnings: 0