AI智能
改变未来

Oracle中的四种约束类型以及如何添加约束


Oracle中的四种约束类型

Oracle中约束类型有主键约束,唯一约束,外键约束,检查约束。

主键约束(primary key constraint)

主键约束:要求主键列数据唯一,并且不能为空。
添加主键约束:
例如在student表中,为字段名为id(学生id)的这一列添加主键约束:
语法是:
alter table 表名 add constraint 主键名 primary key(字段名);
如:
alter table student add constraint pk_student primary key(id);

唯一约束(unique constraint)

唯一约束:要求该列唯一,允许为空,但不能出现一个空值。
添加唯一约束:
例如在student表中,为字段名为name(姓名)的这一列添加唯一约束:
语法是:
alter table 表名 add constraint 约束名 unique(字段名);
如:
alter table student add constraint uq_student unique(name);

外键约束(foreign key constraint)

外键约束:用于两表间建立连接,需要指定引用主表的哪列。
添加外键约束:
例如在student表中,为字段名为gradeno(年级编号)的这一列添加外键约束,引用的外键为grade表中的gno(年级编号):
语法是:
alter table 主表名 add constraint 外键名 foreign key(字段名) references 被引用的表名(字段名);
如:
alter table student add constraint fk_student foreign key(gradeno) references grade(gno);

检查约束(check constraint)

检查约束:某列取值范围限制,格式限制等。如有关年龄的约束。
添加检查约束:
例如在student表中,为字段名为gender(性别)的这一列添加检查约束:
语法是:
alter table 表名 add constraint 约束名 check(约束条件);
如:
alter table student add constraint ck_student check(gender in(‘男’,‘女’));
这条语句的意思是在gender(性别)这一列,数据只能是男或女。

注意:在mysql中,添加检查约束,不报错,但是没有效果。

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » Oracle中的四种约束类型以及如何添加约束