2.1 关系数据结构及形式化定义
2.1.1 关系
域:一组具有相同数据类型的值的集合。
笛卡尔积:所有域的所有取值的一个组合且不能重复
元组:笛卡尔积中每一个元素(d1,d2,…,dn)叫作一个n元组(n-tuple)或简称元组
分量:笛卡尔积元素(d1,d2,…,dn)中的每一个值叫作一个分量
笛卡尔积的表示方法
- 笛卡尔积可表示为一张二维表
- 表中的每行对应一个元组,表中的每列对应一个域
码
超码(superkey)是一个或多个属性的集合,通过这些属性的组合可以使我们唯一标识一个元组
候选码(candidate key)是最小超码。
主码(primary key)是被设计者选中的候选码。
唯一的(名字不能为主码,因为可能重名)
不变的(居住地不能为主码,因为可能搬家)
不能为 NULL
辅键码(secondary key)是用于数据检索目的的属性或属性组合。
一个关系模式(r1)包含另一个关系模式(r2)的主码,那么这个属性在r1中被称作外码(foreign key), 关系r1称作外码依赖的参照关系(referencing relation), 关系r2叫做外码的被参照关系(referenced relation)。
参照完整性约束(referential integrity constraint)指的是在参照关系中任意元组在特定属性上的取值必然等于被参照关系中某个元组在特定属性上的取值。
2.1.2 关系模式
- 关系模式(Relation Schema)是对关系的描述
- 关系模式通常可以简记为 R (A1,A2,…,An),其中A1,A2,…,An为属性名
2.1.3 关系数据库
- 所有关系的集合构成一个关系数据库
- 关系数据库的型与值
- 关系数据库的型: 关系数据库模式,是对关系数据库的描述
- 关系数据库的值::关系模式在某一时刻对应的关系的集合,通常称为关系数据库
2.2 关系的完整性
2.2.1 实体完整性
若属性A是基本关系R的主属性,则属性A不能取空值
空值就是“不知道”或“不存在”或“无意义”的值
选修(学号,课程号,成绩)
若“学号、课程号”为主码
“学号”和“课程号”两个属性都不能取空值
2.2.2 参照完整性
若属性F是基本关系R的外码它与基本关系S的主码Ks相对应,则对于R中每个元组在F上的值必须为:
空值或者等于S中某个元组的主码值
如果有其他问题欢迎留言或邮件提问
QQ:1269112498
Email:1269112498@qq.com
相关文章