关系模型的数学理论基础是建立在集合代数上的,与层次模型、网状模型相比较,是目前广为应用的一种重要的数据模型。以下是关系模型的几个基本概念。
1.关系
通常将一个没有重复行、重复列的二维表看成一个关系,每个关系都有一个关系名。一个关系就是一张二维表,在计算机中可以作为一个文件存储。
2.元组
二维表的每一行在关系中称为元组。在SQL Server数据库中,一个元组对应表中的一个记录。
3.属性
二维表的每一列在关系中称为属性。每个属性都有一个属性名,属性值则是各个元组属性的取值。在SQL Server数据库中,一个属性对应表中的一个字段,属性名对应字段名,属性值对应于各个记录的字段值。
4.域
属性的取值范围称为域。域作为属性值的集合,其类型与范围具体由属性的性质及其所表示的意义确定。如表1-2中“性别”属性的域是{男,女}。同一属性只能在相同域中取值。
5.码
一个教师表如表1-3所示。实际应用中如果需要检索教师数据,可只按姓名、性别、年龄和所在院系,均无法唯一确定查找某位教师的信息,即不能够唯一地标识出需要查询的人。因此在以关系运算为基础的二维表中,必须有关键属性用以标识表中的每一条数据记录。
表1-3 教师表
这个关键属性就是码。下面介绍超码、候选码和主码3个概念。
1)超码:超码是一个或多个属性的集合,这些属性的组合可以使用户在一个实体集中唯一地标识一个实体。如K是超码,则K的任一超集也是超码。如表1-2实体集教师表中的教师编号属性足以把不同的教师区分开,因此,教师编号是实体集教师表的一个超码,同样,教师编号和姓名、教师编号和性别、教师编号和年龄都是实体集教师表的超码。但姓名、性别或年龄不是超码,因为它们有可能同名、同性别或同年龄,不能作为区分的条件。
2)候选码:即最小超码。如果姓名和性别组合可以唯一标识实体集教师表,那么教师编号、姓名和性别组合都是候选码。常用姓名、生日及家庭住址的组合作为候选码。
3)主码:若一个关系有多个候选码,则选定其中一个为主码。主码中包涵的属性称为主属性。
6.关系模式(www.xing528.com)
对关系的描述称为关系模式,其格式为
关系名(属性名1,属性名2,…,属性名n)
关系可以用二维表格描述,也可以用数学形式的关系模式来描述。一个关系模式对应一个关系的数据结构,也就是表的数据结构。
(1)关系模型的特点
●关系必须规范化:规范化指关系模型中的每一个关系模式都必须满足一定的要求。
●数据结构单一:无论是实体还是实体间的联系都用关系表示。
●集合操作:操作对象和结果都是元组的集合,即关系。
(2)关系模型的优点
●有坚实的理论基础,关系模型是建立在严格的数学概念的基础上的。
●无论实体还是实体之间的联系都用关系来表示。数据的检索结果也是关系(即表),因此概念单一,其数据结构简单、清晰。
●关系模型的存取路径对用户透明,从而具有更高的数据独立性,更好的安全保密性,
也简化了程序员的工作和数据库开发建立的工作。
(3)关系模型的缺点
由于存取路径对用户透明,查询效率往往不如非关系数据模型。因此为了提高性能,必须对用户的查询请求进行优化,这就增加了开发数据库管理系统的负担。
(4)关系模型的组成
关系模型由3部分组成:数据结构、关系操作以及关系的完整性。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。