Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Cách làm cho cột hiện có thành UNIQUE trong MySQL?


Dùng ALTER TABLE ... ADD UNIQUE.

Tạo bảng

mysql> CREATE TABLE AddingUnique (
    -> Id INT,
    -> Name VARCHAR(100)
    -> );
Query OK, 0 rows affected (0.44 sec)

Thêm UNIQUE cho cột Name

mysql> ALTER TABLE AddingUnique ADD UNIQUE(Name);
Query OK, 0 rows affected (0.60 sec)

Thử chèn trùng lặp

mysql> INSERT INTO AddingUnique VALUES(1,'John');
Query OK, 1 row affected (0.15 sec)
mysql> INSERT INTO AddingUnique VALUES(1,'John');
ERROR 1062 (23000): Duplicate entry 'John' for key 'name'
mysql> INSERT INTO AddingUnique VALUES(2,'Carol');
Query OK, 1 row affected (0.18 sec)
mysql> INSERT INTO AddingUnique VALUES(3,'John');
ERROR 1062 (23000): Duplicate entry 'John' for key 'name'
mysql> INSERT INTO AddingUnique VALUES(4,'Smith');
Query OK, 1 row affected (0.18 sec)

Kết quả

mysql> SELECT * FROM AddingUnique;
+------+-------+
| Id   | Name  |
+------+-------+
| 1    | John  |
| 2    | Carol |
| 4    | Smith |
+------+-------+
3 rows in set (0.00 sec)