关系模型的三个要素
1 基本结构:Relation/Table
2 基本操作:Relation Operator(各种运算操作)
3 完整性约束:实现完整性,参照完整性和用户自定义完整性候选码/候选键
关系中的一个属性组,其值能唯一标识一个元组,若从该属性组中去掉任何一个属性吗,它就不具有这一性质了,这样的属性组称为候选码
例如:“学生(S#,Sname,Sage,Sclass)”,S#就是一个候选码,在此关系中,任何两个元组的S#是一定不同的,而这两个元组的Sname,Sage,Sclass都可能相同,所有S#是候选码。
有时,关系中有很多组候选码
其中属性S#是候选码,属性组(Sname,Saddress)也是候选码(同名同地址的两个同学是不存在的)
主码/主键
当有多个候选码是,可以选定一个作为主码
当DBMS以主码为主要线索管理关系中的各个元组
主属性与非主属性
包含在任何一个候选码中的属性被称作主属性,二其他属性被称作非主属性
最简单的,候选码只包含一个属性
最极端的,所有属性构成这个关系的候选码,称为全码
外码/外键
关系R中的一个属性组,它不是R的候选码,但它与另一个关系S的候选码相对应,则称这个属性组为R的外码或外键。
例如:“合同”关系中的客户号不是候选码,但确实外码。因它与“客户”关系中的候选码“客户号”相对应。
两个关系通常是靠外码连接起来的。