数据库复习(五、数据库完整性)

1. 实体完整性

在插入或对主码进行更新操作时:

  • 检查主码值是否唯一,如果不唯一则拒绝插入或修改
  • 检查主码的各个属性是否为空,只要有一个为空就拒绝插入或修改
  • CREATE TABLE中用PRIMARY KEY定义

2. 参照完整性

  • 在CREATE TABLE中用FOREIGN KEY短语定义哪些列为外码
  • 用REFERENCES短语指明这些外码参照哪些表的主码

3. 违约处理

4. 用户定义完整性

分为属性上的约束:

  • 列值非空:NOT NULL
  • 列值唯一:UNIQUE
  • 检查列值:CHECK

元组上的约束:可以设置不同属性之间的取值的相互约束条件

完整性约束命名:

5. 触发器

由用户定义在关系表上的一类由事件驱动的特殊过程。