在 MySQL 中,唯一約束用于保證一列(或一組列)的值在表中是唯一的。
在創建表時,可以通過添加 UNIQUE 關鍵字來為一列或一組列設置唯一約束。例如:
CREATE TABLE users ( id INT NOT NULL PRIMARY KEY, email VARCHAR(255) NOT NULL UNIQUE, ... );
在上面的例子中,email 列被設置為唯一約束,保證了每個用戶在注冊時使用的電子郵件地址是唯一的。
如果要為多個列添加唯一約束,則可以將它們放在一對括號中,并用逗號分隔。例如:
CREATE TABLE orders ( id INT NOT NULL PRIMARY KEY, user_id INT NOT NULL, order_number INT NOT NULL, UNIQUE (user_id, order_number), ... );
在上面的例子中,唯一約束將 user_id 和 order_number 兩列的值組合起來,保證了每個用戶在同一訂單中的訂單號是唯一的。
如果嘗試插入重復的值,則會觸發唯一約束的錯誤。例如:
INSERT INTO users (id, email, ...) VALUES (1, 'foo@example.com', ...); INSERT INTO users (id, email, ...) VALUES (2, 'foo@example.com', ...); -- 會觸發唯一約束錯誤
使用唯一約束可以有效地避免數據沖突和重復,是 MySQL 中一個非常有用的特性。
上一篇怎么講css項目