唯一限制可以保證記錄的唯一性(primary key也可以,但是unique key可以存在多個)
唯一限制的字段可以為空(NULL)
舉例:建立表tb5,主鍵id,無符号且自動編号,字段username,非空,唯一限制,字段age 無符号
CREATE TABLE tb5(
id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(20) NOT NULL UNIQUE KEY,
age SMALLINT UNSIGNED
);
顯示表t5的屬性
SHOW COLUMNS FROM t5;
+----------+----------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+----------------------+------+-----+---------+----------------+
| id | smallint(5) unsigned | NO | PRI | NULL | auto_increment |
| username | varchar(20) | NO | UNI | NULL | |
| age | tinyint(3) unsigned | YES | | NULL | |
+----------+----------------------+------+-----+---------+----------------+
驗證:因為id是自動編号的,是以不用輸入這個字段,重複輸入兩個username為TOM的記錄
mysql> INSERT tb5 (username,age) VALUE ('Tom',22);
Query OK, 1 row affected (0.10 sec)
mysql> INSERT tb5 (username,age) VALUE ('Tom',22);
ERROR 1062 (23000): Duplicate entry 'Tom' for key 2
這樣就保證了TOM的記錄是唯一的。