Note/大学笔记/数据库系统原理/单元复习资料/数据库复习4.md

55 lines
1.9 KiB
Markdown
Raw Permalink Normal View History

2023-08-31 11:30:31 +08:00
## 数据库完整性
数据库完整性是指数据的正确性和相容性。
完整性约束 实体完整性 参照完整性 用户定义的完整性
##### 实体完整性
若属性指一个或一组属性A是基本关系R的主属性则A不能取空值。所谓空值就是“不知道” “不存在” 或者“无意义”的值。
关系模型的实体完整性在 create table 中用primary key定义。
###### 实体完整性检查和违约处理
1检查主码值是否唯一如果不唯一则拒绝插入和修改
2检查主码的各个属性是否为空只要有一个为空就拒绝插入和修改。
##### 参照完整性
设F是基本关系R的一个或一组属性但不是关系R的码Ks是基本关系S的主码。如果F与Ks相对应则称F是R的外码并称基本关系R为参照系基本关系S为被参照系。
若属性或属性组F是基本关系R的外码它与基本关系S的主码Ks相对应基本关系R和S不一定是不同的关系则对于R中的每个元组在F上的值必须
或者取空值
或者等于S中某个原则的主码值
###### 参照完整性检查和违约处理
1 拒绝执行(一般设置为默认策略)
2 级联cascade操作
3 设置为空值
##### 用户定义完整性
用户定义的完整性是针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。
在create table 中定义属性的同时,可以根据应用要求定义属性上的约束条件,即属性值限制,包括: 列值非空not null列值唯一unique用check短语指定列值应该满足的条件。
#### 完整性约束命名子句
constraint 完整性约束条件名 完整性约束条件
<u>要求 用check短语写约束条件 和外键约束必须掌握</u>
定义触发器
练习 第四上机内容。文件在群里。