关系模型介绍
一、关系数据库的结构-Structure of Relational Databases
1.关系示例(Example of Relation)
2.属性(Attributes)
①属性域(Attribute Domain)特殊值 null 是每个域的成员,表示该值未知或不存在。 ②属性值要求是原子的;
3.关系模型(Relational Model)
table = relation(关系=表=集合)
row = record = tuple(行=记录=元组)
column = attribute = field(列=属性=字段)
二、数据库模式-Databases Schema
1.关系模式:The schema of a relation refers to its logical design. (关系的模式是指其逻辑设计)
关系模式包括它的属性、即可选的属性类型和关系的约束。
例如:主键和外键约束。
2.关系实例:给定时刻数据库中数据的一个快照。
三、码(码=键)
设K ⊆ R,其中R是关系(即表)的属性集。
1.超码
如果K集合能够事变唯一的元组,则称K为超码(superkey)
2.候选码
如果超码K最小(即无冗余的属性),则称K为候选码(candidate key)
3.主码
①主码(Primary key)是数据库设计师从候选码中选取的。选取原则是:其属性集几乎不会修改。(如公民的身份证)
②唯一性:可以是多个属性相加(但必须是候选码)
4.外码
①必须是引用关系表中的主码值,或者为空
②一张表里可以有n个外码,n>=0
③外码可以引用其他表的主码也可以引用自身
④外码约束是一种特殊的完整性约束(a special case of referential integrity constraints)