3.3关系模型
由于本章主要介绍关系型数据库管理系统MySQL,因此关系模型就是MySQL数据库的基础和核心。
3.3.1 关系模型的基本概念
1. 关系模型的基本特征
关系模型是实体及实体之间联系用二维表来表示的数据模型。二维表由行和列组成。每个二维表称为一个关系。也就是一个关系模型是由多个关系(二维表)组成。
关系模型的基本特征是:
]建立在严格数学概念的关系理论基础之上。
]可以表示实体的一对一、一对多和多对多的联系。
]在关系中的每一列具有不可分性,列名不能重名,列值来自同一个域。
]在关系中不允许有重复行(冗余)。
]在关系中的行、列次序可以任意排列。
关系模型优点概念清晰、结构简单。具有较好的数据独立性和安全保密性。关系模型缺点查询效率比较低。
2.关系模型的基本术语
]关系。一个关系就是一张二维表。每个关系有一个关系名。
]属性。表中的一列称为一个属性,也称字段。每一列有一个属性名(也称字段名),每一属性名有多个属性值(也称字段值)。
]元组。表中的一行数据称为一个元组,也称记录。每一个元组由相应的属性值(也称字段值)组成。
]关键字(主键)。表中能够唯一标识一个元组的属性称为关键字,关键字可以是一个属性或属性组。也就是关键字的值不允许有重复值。
]值域。属性的取值范围称为值域。例如,属性Ssex的值域是“男”或“女”。属性Grade的值域是0~100。
]关系模式。是对关系的描述,主要包含关系名、属性名和关键字。
3.3.2 关系模型的完整性规则
关系模型的完整性规则是对关系的约束,以保证数据库中数据的正确性和一致性。关系模型的完整性规则包括三种:实体完整性、参照完整性和用户定义完整性。其中实体完整性和参照完整性是关系模型必须满足的规则,由数据库管理系统自动支持。
1.实体完整性
实体完整性是指一个基本表必须有主键(关键字),即对主键的约束。
2.参照完整性
参照完整性(或称引用完整性)是指基本表之间联系的约束,即外键的约束。
3.用户定义完整性
用户定义完整性或称域完整性,是指基本表的属性(列)取值的有效性规则。
3.3.3 关系运算
对关系数据库进行查询时,要找到用户所需要的数据就必须进行关系运算,也就是对数据表操作。
在关系数据库中,关系的运算是以一个或多个关系作为关系运算对象,关系运算结果也是关系。关系运算主要有三种:选择运算、投影运算和连接运算。
1.选择运算
选择运算是在一个关系的所有元组中选择指定条件的元组(行或记录),组成新关系。
2.投影运算
投影运算是在一个关系的所有属性中选择指定属性列,组成新关系。
3.连接运算
连接运算是在两个关系中选择满足连接条件的元组,组成一个新关系。新关系中的元组,通过连接条件得到。新关系中的属性,包含原有两个关系的所有属性,其中属性名表示方法是属性名前加上原有关系名。

