- 1、本文档共31页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2.1关系模型概述 关系数据库系统是支持关系模型的数据库系统。 关系模型的三要素为:数据结构、关系操作、关系模型的三类完整性规则。 1.数据结构 一张二维表 2.关系操作 关系模型的三类完整性规则 实体完整性规则,参照完整性规则,用户自定义完整性规则。 实体完整性:对主属性的约束 参照完整性:对外码的约束 用户自定义完整性:用户根据实际情况对其他属性列的约束 2.2关系数据库的基本概念 2.2.1 关系模型的数据结构 2.2.2 关系的数学定义 2.2.3 关系的性质 2.2.4 几个常用术语 2.2.1 关系模型的数据结构 在关系模型中,数据结构就是用单一的二维表结构来表示实体集以及实体与实体之间的联系的。 2.2.2 关系的数学定义 1.域:域是一组具有相同数据类型的值的集合。 2.笛卡尔积 3.关系:D1×D2×D3×…×Dn的子集 目(或度) 数据表:关系 字段:属性 记录:元组 2.2.3 关系的性质 1.同一属性的数据具有同质性 2.同一关系的属性名具有不可重复性 3.关系中列的位置具有顺序无关性 4.关系中元组的位置具有顺序无关性 5.关系具有元组无冗余性 6.关系中每一个分量都必须是不可分割的数据项 2.2.4 几个常用术语 1.关系模式 表示方法为R(U,D,DOM,F),其中R为关系名,U为组成该关系的属性集合,D为属性组U中的属性所来自的域,DOM为属性向域的映像的集合,F为属性间数据的依赖关系集合。 2.关系数据库:在关系数据库中,实体集以及实体间的联系都是用关系来表示的。 3.超键:在关系中能唯一标识元组的属性集。 4.候选键:如果一个属性集能够唯一标识元组,又不含多余属性,则称为候选键。 2.2.4 几个常用术语 5.主键:用户选作元组标识的一个候选键称为主键或主码,也称为关键字。一般情况下,键或码就是主键。 6.主属性:候选键中的所有属性都称为主属性。 7.非主属性:不含在任何候选键中的属性。 8.外键:如果关系中的属性或属性组不是本关系的主键,而是引用另一个关系的主键,则称这一属性或属性组为外键。 2.3 关系的完整性 2.3.1 实体完整性 规则2-1:若属性A是基本关系R上的主属性,则属性A不能取空值。 如关系学生(学号,姓名,性别,年龄,籍贯),在此关系中,学号是主码,则学号也是主属性,如果主属性学号的取值为空,且其他信息相同的学生,则就没有办法区分信息相同的学生。 2.3 关系的完整性 2.3.2 参照完整性 规则2-2:若属性(或属性组)F是基本关系R的外键,它与基本关系S的主键Ks相对性(基本关系R和S不一定是不同的关系),则对于R中的每个元组在F上的值必须为空值(F的每一个属性值均为空值)或者等于S中某个元组的主键值。 实体完整性和参照完整性适用于任何关系数据库系统。 2.3.3 用户自定义完整性 针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。 2.4 关系代数 关系代数式关系操纵语言的一种传统表示方式,它是以集合代数为基础发展起来的,但它的运算对象和运算结果均为关系。 关系代数也是一种抽象的查询语言,它通过对关系的运算来表达查询。 运算的三大要素:运算对象、运算符和运算结果。 关系代数分为:传统的集合运算和专门的关系运算。 传统的集合运算有:并、交、差、广义笛卡尔积四种运算。 专门的关系运算有:选择、投影、选择、除四种运算。 表2-5 关系代数用到的运算符 2.4.1传统的集合运算 传统的集合运算是二目运算,包括并、交、差、广义笛卡尔积四种运算。 1.并(Union) 要求参与运算的两个关系具有相同的列数,属性列的域要相同。 运算结果为参与运算的两个关系的所有元组,并去掉重复的元组。此运算不会对参与运算的关系的列数造成影响。 2.差(Difference) 要求参与运算的两个关系具有相同的列数,属性列的域要相同。 假设参与运算的关系为R和S,则运算结果为R减去和S相同的元组后剩下的元组,也可表示为R-(R∩S)。此运算不会对参与运算的关系的列数造成影响。 2.4.1传统的集合运算 3.交(Intersection) 要求参与运算的两个关系具有相同的列数,属性列的域要相同。 假设参与运算的关系为R和S,则运算结果为R和S相同的元组。此运算不会对参与运算的关系的列数造成影响。 4.广义笛卡尔积(Extended Product) 与第二节的笛卡尔积的计算方法相同。 例2-4 给定关系R和S,如图2-5(a)、(b)所示,求R∪S,R∩S,R-S,R×S。 R∩S R×S 2.4.2 专门的关系运算 1.
文档评论(0)