常用的約束型別如下:
主鍵約束:(primary key constraint) 要求主鍵列唯一,並且不允許為空
唯一約束:(unique constraint) 要求該列唯一,允許為空,但只能出現乙個空值
檢查約束:(check constraint) 某列取值範圍限制、格式限制等。如有關年齡的限制
預設約束:(default constraint) 某列的預設值,如我們的男性學員比較多,性別預設為男
外來鍵約束:(foreign key constraint) 用於在兩表之間建立關係,需要指定引用主表的哪一列
一、新增約束
1.在建立表的時候新增約束
create
table employee(
eno int
notnull
primary
key, --主鍵
eid char(18) unique, --唯一約束
ename char(20),
esalary smallint
)--或者這樣寫
create
table employee(
eno int
notnull,
eid char(18),
ename char(20),
esalary smallint,
constraint pk_eno primary
key(eno),
constraint uq_eid unique(eid)
)
2.我們可以在建立表示在字段後新增各種約束,但一般不這樣做,將新增約束和建表的語句分開編寫會顯得**簡潔美觀。
新增約束的語法如下:
alter
table 表名
addconstraint 約束名 約束型別 具體的約束型別
具體例項
---新增主鍵約束
alter
table employee
addconstraint pk_eno primary
key(eno)
---新增唯一約束
alter
table employee
addconstraint uq_eid unique(eid)
---新增預設約束
alter
table employee
addconstraint df_ename default('訪客') for ename
---新增檢查約束
alter
table employee
addconstraint ck_esalary check(esalary>0)
---新增外來鍵約束
alter
table employee
addconstraint fk_eid foreign
key(id) references employeeid (eid)
二、刪除約束
alter
table 表名
drop
constraint 約束名
具體例項
--刪除主鍵約束
alter
table student
drop
constraint pk_stuno
sql語句新增約束
主鍵約束 primary key constraint 要求主鍵列的資料唯一,並且不允許為空。唯一約束 unique constraint 要求該列唯一,允許為空,但只能出現乙個空值。檢查約束 check constraint 某列取值範圍限制 格式限制等,如有關年齡的約束。預設約束 default...
ylb 使用sql語句實現新增 刪除約束
ylbtech sql server sql server 使用sql語句實現新增 刪除約束 主鍵約束 primary key constraint 要求主鍵列的資料唯一,並且不允許為空。唯一約束 unique constraint 要求該列唯一,允許為空,但只能出現乙個空值。檢查約束 check ...
約束新增和刪除
約束的目的就是確保表中的資料的完整性。常用的約束型別如下 主鍵約束 primary key constraint 要求主鍵列唯一,並且不允許為空 唯一約束 unique constraint 要求該列唯一,允許為空,但只能出現乙個空值 檢查約束 check constraint 某列取值範圍限制 格...