首頁 >資料庫 >mysql教程 >sql唯一約束有什麼用

sql唯一約束有什麼用

清浅
清浅原創
2019-05-09 09:27:556843瀏覽

SQL中唯一約束的作用是保證每個記錄中都有一個唯一的標識,使得該列上沒有相同的兩個記錄值;其中表的主鍵就是一個唯一性約束,不過主鍵只能有一個,所以如果其他欄位的資料不允許重複的話,就可以建立唯一性約束。

sql唯一約束有什麼用

SQL中唯一約束的作用是保證每個記錄中都有一個唯一的標識,使得該列上沒有相同的兩個記錄值。

唯一約束

SQL中唯一約束是防止在特定的欄位中有相同的兩個紀錄值,也就是說它是用來保證每個記錄都有一個唯一的識別,使得該列上沒有重複的值。表的主鍵就是一個唯一性約束,不過主鍵只能有一個,所以如果其他列的資料不允許重複的話,就可以建立唯一性約束。

建立唯一約束

例如,下面的SQL建立一個新的表名為CUSTOMERS,並且新增了五個欄位。在這裡,AGE列設定為唯一的,所以不能有兩個記錄使用相同的年齡:

CREATE TABLE CUSTOMERS(
       ID   INT              NOT NULL,
       NAME VARCHAR (20)     NOT NULL,
       AGE  INT              NOT NULL UNIQUE,
       ADDRESS  CHAR (25) ,
       SALARY   DECIMAL (18, 2),       
       PRIMARY KEY (ID));

如果CUSTOMERS表已經創建,然後要將唯一約束添加到AGE列,類似如下的聲明:

ALTER TABLE CUSTOMERS;
MODIFY AGE INT NOT NULL UNIQUE;

也可以使用下面的語法,它支援命名的多個列的約束:

ALTER TABLE CUSTOMERS;
ADD CONSTRAINT myUniqueConstraint UNIQUE(AGE, SALARY);

刪除唯一約束

##要刪除UNIQUE約束,請使用下列SQL:

ALTER TABLE CUSTOMERS;
DROP CONSTRAINT myUniqueConstraint;

如果正在使用MySQL,那麼可以使用下面的語法:

ALTER TABLE CUSTOMERS
DROP INDEX myUniqueConstraint;

 

#

以上是sql唯一約束有什麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn