- 1、本文档共114页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章 关系模型 上一章介绍了三种主要的数据模型: 层次模型 网状模型 关系模型 其中关系模型简单灵活,并有着坚实的理论基础,已成为当前最流行的数据模型。 本章主要讲述: 关系模型的数据结构 关系的定义和性质 关系数据库的基本概念 关系运算 2.1 关系模型 关系模型就是用二维表格结构来表示实体及实体之间联系的模型。 关系模型是各个关系的框架的集合,即关系模型是一些表格的格式,其中包括关系名、属性名、关键字等。 教师关系T 课程关系C 授课关系SC 教师—课程数据库的关系模型 从各个关系的框架中,我们可以很容易看出哪两个关系之间有联系。例如: 教师关系和授课关系有公共的属性“教师号”,则表明这两个关系有联系。 而课程关系和授课关系有公共的属性“课程号”,则表明这两个关系也有联系。 至于元组之间的联系,则与具体的数据有关。只有在公共属性上具有相同属性值的元组之间才有联系。 由上例可以看出,在一个关系中可以存放两类信息: 一类是描述实体本身的信息 一类是描述实体(关系)之间的联系的信息 所以,在建立关系模型时,只要把的所有的实体及其属性用关系框架来表示,同时把实体之间的关系也用关系框架来表示,就可以得到一个关系模型。 如上例中的教师—课程数据库的关系模型就是这样建立的。 2.2 关系的定义 在关系模型中,数据是以二维表的形式存在的,这个二维表就叫做关系。 关系理论是以集合代数理论为基础的,因此,我们可以用集合代数给出二维表的“关系”定义。 2. 关系的性质 尽管关系与二维表格、传统的数据文件是非常类似的,但它们之间又有重要的区别。 严格地说,关系是种规范化了的二维表中行的集合,为了使相应的数据操作简化,在关系模型中,对关系作了种种限制,关系具有如下特性: 1. 关系中不允许出现相同的元组。 2. 关系中元组的顺序(即行序)是无关紧要的,在一个关系中可以任意交换两行的次序。根据关系的这个性质,可以改变元组的顺序使其具有某种排序,然后按照顺序查询数据,可以提高查询速度。 关系数据模型的数据结构 在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。 数据库中的表/关系 基本关系的性质 ①列是同质的,即每一列中的分量是同一类型的数据,来自同一个域。 ②不同的列可出自同一个域,称其中的每一列为一个属性,不同的属性要给予不同的属性名 ③列的顺序无所谓,即列的顺序可以任意交换。 ④任意两个元组不能完全相同。 ⑤行的顺序无所谓,即行的顺序可以任意交换。 ⑥分量必须取原子值,即每个分量必须是不可再分的数据项。 关系性质1——同质的列 3.1.6 关系性质2—不同的属性名 3 关系性质3—属性无序 3.1.6 关系性质4—元组不重复 3.1.6 关系性质5—元组无序 关系性质6—分量是原子 关系数据库模式例 1.5.4 关系数据库的完整性 完整性是数据模型的一个非常重要的方面。 关系数据库从多个方面来保证数据的完整性。在创建数据库时,需要通过相关的措施来保证以后对数据库中的数据进行操纵时,数据是正确的、一致的。 关系数据库提供:实体完整性、参照完整性、用户定义的完整性。 本节介绍三种完整性最基本的措施。 关系的定义和性质 定义2.2 关系是一个属性数目相同的元组的集合。 在关系模型中,对关系作了下列规范性限制: (1)关系中每一个属性值都是不可分解的; (2)关系中不允许出现重复元组(即不允许出现相同的元组); (3)由于关系是一个集合,因此不考虑元组间的顺序,即没有行序; (4)元组中的属性在理论上也是无序的,但使用时按习惯考虑列的顺序。 关系模型的三类完整性规则(1) 实体完整性规则(entity integrity rule) 要求关系中元组在组成主键的属性上不能有空值。如果出现空值,那么主键值就起不了惟一标织元组的作用。 关系模型的三类完整性规则 (2) 参照完整性规则(reference integrity rule) 定义2.3 参照完整性规则的形式定义如下: 如果属性集K是关系模式R1的主键,K也是关系模式R2的外键,那么在R2的关系中,K的取值只允许两种可能,或者为空值,或者等于R1关系中某个主键值。 这条规则的实质是“不允许引用不存在的实体”。 在上述形式定义中,关系模式R1的关系称为“参照关系”,关系模式R2的关系称为“依赖关系”。“主表”和“副表”,“父表”和“子表”。 关系模型的三类完整性规则 (3) 例2.1 下面各种情况说明了参照完整性规则在关系中如何实现的。 ① 在关系数据库中有下列两个关系模式: S(S#,SNAME,AGE,
文档评论(0)