关系模型
在数据库中,一个关系即是一张表
关系表中 “ 列 ” 的取值范围称为 “ 域 ” (域 不用于属性名)
域是一组值的集合,这组值具有相同的数据类型,这种性质称为同质。
集合中的元素个数称为基数
元组中每一个属性也称为一个分量。
笛卡尔积(也叫做n元组):指的是两个表连接在一起的所有可能的集合。
如:
表A
表B
表A和表B 的 笛卡尔积 , 记作A X B , 则为
数据库中的关系,指的是笛卡尔积的子集,即有意义的组合
关系中元组的数目是关系的基数
例:
关系(属性名 数据类型)
SC(S# VARCHAR(8))
SC关系中 ,S#为可变长度字符串,长度为8个字符
候选码
关系中的一个属性组,其中元素可以唯一标识一个元组,这样的属性组称为候选码
属性组中有多个候选码时,其中只能有一个作为主码(或主键)
候选码中的属性称为主属性,非候选码则称为非主属性
当所有属性一起构成候选码时,称为全码
外码:是其他关系中的主码,因此外码是用来连接两个关系的,或者说是用来连接两张表的
关系模型中的完整性
- 主码中的属性值不能为空(实体完整性)
- 关系中R1的外码F与关系R2的主码K一一对应,即F值等于K值,或为空值(参照完整性)
- 用户针对具体应用环境定义的约束条件(用户自定义完整性)