- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库技术及应用第二章 关系数据库 目录 系统而严格地提出关系模型的是美国IBM公司的E.F.Codd,1970年6月,IBM圣约瑟研究实验室的高级研究员埃德加·考特(Edgar Frank Codd)在Communications of ACM 上发表了《大型共享数据库数据的关系模型》一文,首次明确而清晰地为数据库系统提出了一种新的模型,即关系模型。它用关系的概念来建立数据模型,用以描述、设计与操纵数据库。E.F.Codd之后又发表了一系列的论文继续完善和发展关系理论。 80年代后,关系数据库系统成为最重要、最流行的数据库系统。当前,比较典型的实验系统有IBM公司的System R和UC Berkley的University INGRES。典型商用系统有ORACLE,SYBASE,INFORMIX,DB2和INGRES。 关系数据库系统是支持关系模型的数据库系统。关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。 2.1 关系数据结构及概念 2.1.1关系数据结构 在关系数据库系统中,只存在单一的数据结构就是关系。关系数据库处理的对象和结果都是用关系来表示,关系是关系数据模型的核心。 关系是满足一定条件的二维表。表中的一行称为关系的一个元组,用来存储事物的一个实例;表中的一列称为关系的一个属性,用来描述实体的某一特征。表是由一组相关实体组成的集合。所以,表和实体集这两个词常常可以交替使用。 关系数据库中,所有的数据都是通过表来进行存储的。 例如下表2-1给出了一个关系模式“公司职员(姓名,职员ID,职称,出生日期,性别,工资)”的实例。表的每一行表示一个物理实体—— 一个职员。表中有6行,代表6个职员。表的每一列代表一个职员的一个数据项,记录工作人员的一部分信息。 表2-1公司职员关系 关系具有以下特点: ① 关系的每一行定义实体集的一个实体,每一列定义实体的一个属性; ② 每一行必须有一个主码,主码是一个属性组(可以是一个属性),它能惟一的标识一个实体; ③ 每一列表示一个属性,且列名不能重复; ④ 列的每个值必须与对应属性的类型相同; ⑤ 列有取值范围,称为域; ⑥ 列是不可分割的最小数据项; ⑦ 行、列的顺序对用户无关紧要。 用来表示关系的表中的数据项不可再分。如下表2-2就不是一个关系。 表2-2非关系结构示例 2.1.2 基本概念 ·候选码(Candidate Key) 若关系中的某一属性组(或单个属性)的值能惟一的标识一个元组,则称该属性组(或属性)为候选码。 ·主码(Primary key) 若一个关系有多个候选码,则选择其中一个候选码作为关系的主码。 ·主属性(Prime Attribute)和非主属性 关系中主码中的属性称为主属性。不包含在任何一个候选码中的属性称为非主属性。 ·域(Domain) 域是一组具有相同数据类型的值的集合,如整数域、实数域等。 ·关系模式(Relation Schema) 关系模式是对关系的描述,形式化表示为: R(U, D, dom, F) 其中,U:组成该关系的属性名集合; D:属性组U中属性所来自的域; dom:属性向域的映象集合,如属性的类型、长度; F:属性间数据的依赖关系集合; 关系模式可简记为R(U)或R(A1, A2, …, An),其中Ai为属性名。关系模式是型,是对关系的描述,是静态的,稳定的;关系是值,由赋予它的元组语义来确定的,是动态的,不断变化的,是关系模式在某一时刻的状态或内容。实际应用中常常将关系模式和关系都称为关系 关系数据库 在给定应用领域中,所有表示实体及实体之间联系的关系的集合构成一个关系数据库。关系数据库也有型和值之分。关系数据库的型称为关系数据库模式,是对关系数据库的描述。它包括若干域的定义以及在这些域上定义的若干关系模式;关系数据库的值是这些关系模式在某一时刻对应的关系的集合,通常简称为关系数据库。 2.2 关系的完整性约束 关系完整性(Integrity):指关系数据的正确性和相容性。是对关系数据库数据的语义约束条件。如学生的学号必须唯一;性别只能是男或女等。数据库是否具备完整性影响到数据库系统能否真实地反映现实世界。 加在数据库数据之上的语义约束条件称为完整性约束条件,它们作为模式的一部分存入数据库中。完整性条件的检查在DBMS中实现。关系模型中有三类完整性约束: ·实体完整性 ·参照完整性 ·用户定义的完整性 其中,实体完整性和参照完整性是关系模型必须满足的完整性约束条件,应由系统自动支持(RDBMS来实现)。 1、实体完整性(Entity Integrity) 规则2.1实体完整性规则 关系中主码的值不能为空。或者说若属性A是基本关系R的主属性,则属性A不能取空值。 说明: (1) 实体完整性规则
文档评论(0)