关系模型
- 表中的几个词汇
- 码
- 模式图
- 关系运算
关系模型:描述数据,数据联系,数据语义,一致性约束的概念公寓的集合。
表中的几个词汇
- 属性
对应表中的列 - 域
列的取值范围(相同数据类型的值的集合) - 元组
表中的行即为元组 - 关系
由n个域笛卡尔积(即从每个域中抽取作为元组的一个分量)的子集组成的一张2维表称为关系。由于并非所有元组都有意义,所以只有那些有意义的元组的集合才是关系。说白了就是指数据库表。
关系有3个属性:(1)关系名(表名) (2)属性列表及值域(列) (3)属性间的数据依赖(完整性约束) - 候选码
能唯一决定元组的属性或属性组 - 主键
从候选码中选定一个作为主码,又叫主键 - 外键
关系A中有c1,c2两个属性不是候选码,且对应于另外一个关系B中的主键c11,c22.则称c1.c2是关系a,b的外键。 - 关系代数
传统的运算形式(并、交、差)+ 专门的运算形式(选择、投影、连接)
码
- 超码
一个或多个属性的集合,这些属性的集合可以使我们在一个关系中唯一的标识一个元组。 - 候选码
关系种的一个属性组,其值能唯一的表示一个元组。若从属性组种去掉任何一个属性,它就不具有这一性质,这样的属性组称作候选码。而且任何一个候选码中的属性称作主属性。 - 主码
进行数据库设计的时候,从一个关系的多个候选码种选定一个作为主码,如可选定ID作为instructor的主码。 - 外码
关系R中的一个属性组,它不是R的码,但它与另一个关系S的码相对应,则称这个属性为R的外码,R是参照关系,S是被参照关系,关系R通过外码F参照关系F
模式图
含有主码和外码依赖的数据库模式可以用模式图来表示:
关系:矩形
关系名称:列在矩形上方
属性:列在矩形内
主码属性:下划线标注
外码依赖:从参照关系的外码属性到被参照关系的主码属性之间的箭头表示。
关系运算
- 从单个关系中选出满足一些特定谓词的特殊元组(行)
- 从一个关系中选出特定的属性
- 笛卡尔积:把分别来自两个关系的元组对合并成单个元组
- r并s:把两个关系中相同的数据合并成一个放到新的关系中。
- r减s:把两个关系中相同的去掉形成新的关系。
- r交s:将两个关系中相同的数据提出来形成新的关系。
- 自然连接:两个关系上的自然连接运算所匹配的元组在两个关系共有的所有属性上取值相同。
- 图中五条线对应着自然连接后的五个元组(行)