19.使用约束
约束用于确保数据库满足特定的商业规则.通过使用约束,可以实现数据完整性.
约束分类
1,NOT NULL
NOT NULL约束用于确保列不能为NOT NULL.如果列上定义了NOT NULL约束,插入数据时,必须为该列提供数据.
2.UNIQUE
UNIQUE约束用于唯一标识列的数据.当定义了唯一约束后,唯一约束列的劣质不能重复,但允许列为NULL.
3.PRIMARY KEY
PRIMARY KEY约束用于唯一标识行的数据.定义了主键约束后,主键约束列的列值不仅不能重复,也不能为NULL
4,FOREIGN KEY
FOREIGN KEY 约束用于定义主从表之间的关系.外部约束要定义在从表上,但主表必须具有主键约束或唯一约束.定义了外部键约束后,要求外部键列的数据必须在主表的主键列(或唯一列)中存在,或这为NULL
5.CHECK
CHECK约束用于强制表行数据必须满足的条件.
约束状态
约束具有ENABLE VALIDATE,ENABLE NOVALIDATE,DISABLE VALIDATE和DISABLE NOVALIDATE四种状态.
1. ENABLE VAILDATE
当将约束转变为ENABLE VAILDATE状态时,要求新,旧数据必须同时满足约束规则.
2. ENABLE NOVALIDATE
当将约束转变为ENABLE VAILDATE状态时,已存在数据可以不满足约束规则,但新数据必须满足约束规则.
3. DISABLE VALIDATE
将约束转变为DISABLE VALIDATE状态时,不允许在表上执行任何DML操作.对于主键和唯一约束来说,会删除相应的唯一索引,但约束规则仍然有效.该状态主要用于在分区表和非分区表之间使用ALTER TABLE …. EXCHANGE PARATITION命令进行数据交换.
4. DISABLE NOVALIDATE
将约束转变为DISABLE NOVALIDATE状态时,数据可以不满足约束规则.对于主键和唯一约束来说,会删除相应的唯一索引.
维护约束
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/312079/viewspace-245252/ ,如需转载,请注明出处,否则将追究法律责任。