唯一性約束
在此輸入正文
一、基本定義
UNIQUE 約束唯一表示數據庫表中的每條記錄,可定義列也可定義表
注:1>.UNIQUE和PRIMARY KEY 都為列和集合提供唯一性的保證
2>.PRIMARY KEY 自動定義UNIQUE約束
CREATE TABLE 表名
(
列名稱1 數據類型 NULL/NOT NULL,
列名稱2 數據類型 NULL/NOT NULL,
....
CONSTRAINT constraint_name UNION(列名稱1,列名稱2,...)
)
二、表建立時定義唯一性約束
1.單列的唯一性約束
CREATE TABLE person
(
id int(10) NOT NULL,
idCard int(20) NOT NULL,
name varchar(10) NOT NULL,
address varchar(255),
CONSTRAINT person_u1 UNIQUE(id) --person_u1約束的名字
)
2.多列的唯一性約束
CREATE TABLE person
(
id int(10) NOT NULL,
idCard int(20) NOT NULL,
name varchar(10) NOT NULL,
address varchar(255),
CONSTRAINT person_u2 UNIQUE(id,idCard)
)
三、使用ALTER TABLE語句建立唯一性約束
1.單列的唯一性約束
ALTER TABLE person
ADD CONSTRAINT person_u1 --person_u1約束的名字
unique (id);
2.多列的唯一性約束
ALTER TABLE person
ADD CONSTRAINT person_u2
unique (id,idCard);
四、唯一性約束的開啟、關閉和刪除
1.關閉
ALTER TABLE person
DISABLE CONSTRAINT person_u1;
2.開啟
ALTER TABLE person
ENABLEND CONSTRAINT person_u1;
3.刪除
ALTER TABLE person
DROP CONSTRAINT person_u1;