关系模型简述
关系模型就是处理TABLE,它由三部分组成:
描述DB各种数据的基本结构形式(Table/Relation)
描述Table与Table之间所可能发生的各种操作(关系运算)
描述这些操作所应遵循的约束条件(完整性约束)
关系模型的三个要素
完整性约束: 实体完整性、参照完整性和用户自定义的完整性
实体完整性
关系的主码中的属性值不能为空值;
空值:不知道或无意义的值;
意义:关系中的元组对应到现实世界相互之间可区分的一个个个
体,这些个体是通过主码来唯一标识的;若主码为空,则出现不可标识
的个体,这是不容许的。
参照完整性
如果关系R1的外码Fk与关系R2的主
码Pk相对应,则R1中的每一个元组的
Fk值或者等于R2 中某个元组的Pk 值,
或者为空值
意义:如果关系R1的某个元组t1参照
了关系R2的某个元组t2,则t2必须存在
例如关系Student在D#上的取值有两
种可能:
空值,表示该学生尚未分到任何系中
若非空值,则必须是Dept关系中某个
元组的D#值,表示该学生不可能分到一
个不存在的系中。
用户自定义完整性
用户针对具体的应用环境定义的完整性约束条件
如S#要求是10位整数,其中前四位为年度,当前年度与他们的
差必须在4以内。
域:“列”的取值范围
基数:属性中 元素的个数
主键
外键
候选键