1.约束作用:约束用于确保数据库数据的完整性,在oracle数据库中,可以使用约束,触发器和应用代码(过程,函数)3种方法实现数据完整性,这3种方法中,因为约束易于维护,并且具有最好的性能,所以实现数据完整性首选约束
分类:约束的种类有:notnull,unique,primarykey,foreignkey,checkNotnull确保字段值不能为空Unique:确保字段值唯一性Primarykey,最常用的约束(主键约束),主键约束的列值不仅不能重复,也不能为NULL,注意一张表最多只能有一个主键约束,当定义主键约束后oracle自动建立一个以主键为关键字段的索引
Foreignkey:定义了主从表之间的关系,foreign要定义在从表上,但主表必须具有主键约束或唯一约束,当定义froeignkey后外部键列的数据必须在主表的主键列中存在,或者为NULLCheck::用于强制表行数据必须满足的条件,如工资表,工人工资必须在2000-5000之间约束状态enablevalidate:是默认,新旧数据同时满足约束规则enablenovalidate:旧数据可以不满足,检新插入的数据要满足约束disablevalidate:不允许在表上执行任何DML操作,主要用在分区表,对于主键和唯一约事,会删除相应的唯一索引,但约束状态任可用disablenovalidate数据可不满足约束规则,对于主键和唯一约事,会删除相应的唯一索引,约束常用语句1
createtablet(inumber,vmubmernotnull)2
createtablet(inumber,vmubmerunique)3
createtablet(inumberconstraintpk_iprimarykey,vnumber)4
createtablet2(cnumber,dnumber,constraintf