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

기존 MySQL 테이블의 필드에 UNIQUE 제약 조건을 어떻게 적용할 수 있습니까?


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