概述:数据的完整性用于确保数据库数据遵从一定的商业和逻辑规则。在Oracle中,数据完整性可以使用约束、触发器、应用程序(过程、函数)三种方法来实现,在这三种方法中,因为约束易于维护,并且具有最好的性能,所以作为维护数据完整性的首选。
1、约束包括五种:
A、唯一:unique
constraint constraint_name unique(column);
B、主键:primary key
constraint constraint_name primarykey(column);
C、非空值:not null
column not null;
D、检查:check
constraint constraint_name check(condition);
例如:consraint deptno_ck check(deptno between1 and 99);
E、外键:foreign key
constraint constraint_name foreignkey(column) references table_name(column);
alter…… add constraint 命令创建外键
例如:alter table depart add constraintdepart_empid_fk foreign key(empid)refences
emp(empid);
2、启动约束条件
使用Alter……enable命令可以启动约束条件
例如:alter table depart enable constraintdepart_empid_fk;
3、关闭约束条件
使用alter……disable命令可以关闭约束条件
例如:alter table depart disable constraintdepart_empid_fk;
4、删除约束条件
使用alter……drop可以删除约束条件;
例如:alter table depart drop constraintdepart_empid_fk;
5、验证外键约束条件
不可以删除父表(被参照的表);
当父表的数据不存在的时候,就无法在子表添加数据。会违反完整约束条件;