关系模型
用二维表来表示实体以及相互联系。
优点
①建立在严格的数学概念基础上。
②简单,表的概念直观,用户易理解。
③概念单一,实体和实体之间的联系都用关系表示。
④存取路径对用户透明,具有更高的数据独立性和更好的安全保密性,也简化了程序员的工作和数据库开发建
立的工作。
缺点
性能往往不如非关系数据模型。
相关术语
①关系(Relation):一个关系对应着一个二维表,二维表就是关系名。
③属性(Attribute):在二维表中的列,称为属性。属性的个数称为关系的元或度。列的值称为属性值。
④(值)域(Domain):属性值的取值范围为值域。
⑤关系模式:在二维表中的行定义,即对关系的描述称为关系模式。一般表示为(属性1,属性2,......,属性n)
⑥分量:每一行对应的列的属性值,即元组中的一个属性值。
⑦键(码):如果在一个关系中存在唯一标识一个实体的一个属性或属性集称为实体的键,即使得在该关系的任何一
⑧候选键(候选码):若关系中的某一属性的值能唯一标识一个元组如果在关系的一个键中不能移去任何一个属性,
个关系状态中的两个元组,在该属性上的值的组合都不同。
否则它就不是这个关系的键,则称这个被指定的候选键为该关系的候选键或者候选码。
⑨主键(主码):在一个关系的若干候选键中指定一个用来唯一标识该关系的元组,则称这个被指定的候选键
称为主关键字,或简称为主键、关键字、主码。每一个关系都有并且只有一主键,通常用较小的属性组合作为主
键。例如学生表,选定“学号”作为数据操作的依据,则“学号”为主键。而在选课表中,主键为(学号,课程号)。
⑩主属性和非主属性:关系中包含在任何一个候选键中的属性称为主属性,不包含在任何一个候选键中的属
性为非主属性。
⑪元组(Tuple):在二维表中的一行,称为一个元组。
⑫全键或者全码:一个关系模式中的所有属性的集合。
⑬外键或者外码:关系中的某个属性虽然不是这个关系的主键,或者只是主键的,但它却是另外一个关系的
主键时,则称之为外键或者外码。
⑭超键或者超码:如果在关系的一个键中移去某个属性,它仍然是这个关系的键,则称这样的键为关系的超
键或者超码。
关系模型的三类完整性规则
1.实体完整性规则
这条规则需求关系中元组在组成主键的属性上不能有空值。如有空值,那么主键值就起不了唯一标识元组的作用。
2.参照完整性规则
如果属性集K是关系模式R1的主键,K也是关系模式R2的外键,那么在R2的关系中,K的取值只允许有两种可
能,或为空值,或等于R1关系中某个主键值。使用时应注意:
a.外键和相对应的主键能不同名,只要定义在相同的值域上即可。
b.R1和R2也能是同一个关系模式,表示了属性之间的联系。
c. 外键值是否允许为空,应视具体问题而定。
3.用户定义的完整性规则
这是针对具体数据的约束条件,由应用环境而定。
关系模型的形式定义
一、三个组成部分:数据结构、数据操作和完整性规则。
1.关系模型的基本数据结构就是关系。
2.关系运算分为关系代数和关系演算。
3.关系模型的三类完整性规则。
二、关系代数
关系查询语言根据其理论基础的不同分成两大类:
关系数据库的数据操作分为查询和更新两类。查询语句用于各种检索操作,更新操作用于插入、删除和修改等操作。
1.关系代数语言:查询操作是以集合操作为基础运算的DML语言。
2.关系演算语言:查询操作是以谓词演算为基础运算的DML语言。