方法:1、用“alter table 表名 add constraint 主鍵名 primary key”語(yǔ)句添加主鍵約束;2、用“alter table 表名 add constraint 約束名 unique”語(yǔ)句添加唯一約束等。
本教程操作環(huán)境:Windows10系統(tǒng)、oracle 11g版、Dell G3電腦。
oracle怎樣增加約束
Oracle中約束類型有主鍵約束,唯一約束,外鍵約束,檢查約束。
主鍵約束(primary key constraint)
主鍵約束:要求主鍵列數(shù)據(jù)唯一,并且不能為空。
添加主鍵約束:
例如在student表中,為字段名為id(學(xué)生id)的這一列添加主鍵約束:
語(yǔ)法是:
alter?table?表名?add?constraint?主鍵名?primary?key(字段名);
如:
alter?table?student?add?constraint?pk_student?primary?key(id);
唯一約束(unique constraint)
唯一約束:要求該列唯一,允許為空,但不能出現(xiàn)一個(gè)空值。
添加唯一約束:
例如在student表中,為字段名為name(姓名)的這一列添加唯一約束:
語(yǔ)法是:
alter?table?表名?add?constraint?約束名?unique(字段名);
如:
alter?table?student?add?constraint?uq_student?unique(name);
外鍵約束(foreign key constraint)
外鍵約束:用于兩表間建立連接,需要指定引用主表的哪列。
添加外鍵約束:
例如在student表中,為字段名為gradeno(年級(jí)編號(hào))的這一列添加外鍵約束,引用的外鍵為grade表中的gno(年級(jí)編號(hào)):
語(yǔ)法是:
alter?table?主表名?add?constraint?外鍵名?foreign?key(字段名)?references?被引用的表名(字段名);
如:
alter?table?student?add?constraint?fk_student?foreign?key(gradeno)?references?grade(gno);
檢查約束(check constraint)
檢查約束:某列取值范圍限制,格式限制等。如有關(guān)年齡的約束。
添加檢查約束:
例如在student表中,為字段名為gender(性別)的這一列添加檢查約束:
語(yǔ)法是:
alter?table?表名?add?constraint?約束名?check(約束條件);
如:
alter?table?student?add?constraint?ck_student?check(gender?in(‘男’,‘女’));
這條語(yǔ)句的意思是在gender(性別)這一列,數(shù)據(jù)只能是男或女。
推薦教程:《Oracle視頻教程》