溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

sql唯一約束的作用是什么

發(fā)布時(shí)間:2020-09-28 17:54:07 來源:億速云 閱讀:1044 作者:小新 欄目:MySQL數(shù)據(jù)庫

小編給大家分享一下sql唯一約束的作用是什么,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

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

唯一約束

SQL中唯一約束是防止在特定的列中有相同的兩個紀(jì)錄值,也就是說它是用來保證每個記錄都有一個唯一的標(biāo)識,使得該列上沒有重復(fù)的值。表的主鍵就是一個唯一性約束,不過主鍵只能有一個,所以如果其他列的數(shù)據(jù)不允許重復(fù)的話,就可以建立唯一性約束。

創(chuàng)建唯一約束

例如,下面的SQL創(chuàng)建一個新的表名為CUSTOMERS,并添加了五列。在這里,AGE列設(shè)置為唯一的,所以不能有兩個記錄使用相同的年齡:

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表已經(jīng)創(chuàng)建,然后要將唯一約束添加到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唯一約束的作用是什么的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

sql
AI