第3篇 关系数据模型.ppt

  1. 1、本文档共52页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3.1 关系模型的基本概念 3.1.1 关系的通俗解释 在关系模型中,信息被组织成若干张二维表的结 构,每一张二维表称为一个关系(relation)或表 (table),每个表中的信息只用来描述客观世界中的一 件事情。例如,在学校中,为了表达学生与专业的“所 属”关系,学生与课程的“选修”关系,教师与课程的 “任教”关系,可以制成如下表格: 表3.1 学生选课登记表 3.1.2 关系的数学定义 定义3.1 域(Domain)是值的集合。 定义3.2 给定一组域 D1,D2,...,Dn,这些域中可以 有相同的域,D1,D2,...,Dn的笛卡儿积为: D1×D2×...×Dn={(d1,d2,…,dn)|di∈Di,i=1, 2,…,n},其中每一个元素(d1,d2,...,dn)叫作一个 n元组(n-tuple),或简称为元组;元素中每一个值di叫 做一个分量(Component)。若 Di(i=1,2,…,n)为有限 集,其基数为 mi(i=1,...,n),则 D1×D2×…×Dn的 基数为: 定义3.3 若D1×D2×…×Dn为笛卡儿积,则它的子集叫 做在域D1×D2×…×Dn上的关系(Relation),可以用 R(D1,D2,…,Dn)表示。这里R表示关系的名字,n是关 系的目或度。 关系是一个二维表,表的每行对应一个元组,表的 每列对应一个域.由于域可以相同,所以为了加以区 分。对每列起一个名字,称为属性。n目关系必有n个属 性。总之,数据库中的关系有以下性质: 1.每列中的分量是同类型的数据,来自同一个域; 2.不同列可出自同一个域,每一列称为属性,要给 予不同的属性名; 3.列的顺序可任意交换,行的顺序也可任意交换; 4.关系中的任意两个元组不能完全相同; 5.每一分量必须是不可分的数据项。 3.1.3 关系模型 1.数据结构 在关系模型中,无论是实体还是实体之间的联系均 由单一的结构类型即关系来表示。也就是说,任何一个 关系数据库都是由若干张互相关联的表组成。 关系模式与关系是彼此密切相关但又有所区别的两 个概念,它们之间的关系是一种“型与值”的关联关 系。关系模式是静态的,而关系则是动态的 。 2.关系操作 关系操作方式的特点是集合操作,即操作的对象和结 果是集合,也称为一次一集合的方式。非关系型的数据 操作方式则为一次一记录的方式。 3. 关系模型的三类完整性 关系模型的三类完整性包括实体完整性、参照完整 性和用户定义的完整性。 实体完整性和参照完整性是关系模型必须满足的 完整性约束条件,应该由关系系统自动支持。 (l)实体完整性:在任何关系的任何一个元组中,主 键码值的任一分量都不允许为空值。 (2)参照完整性(引用完整性):若某个属性或属性 组不是A表的主键码,但它是另一张B表的主键码,则 该属性或属性组称为 A表的外键码。在关系模型中, 外键码或者取空值或者等于B中某个元组的主键码 值。 (3) 用户定义完整性:由用户针对某一具体数据库的 约束条件来定义完整性。它由应用环境决定,反映了 某一具体应用所涉及的数据必须满足的语义要求。 关系模型的优点和缺点。 3.1.4 关系数据库管理系统 按照 RDBMS产品对关系模型的支持程度的不同,DBMS 大致可分成三种等级: 1.半关系型DBMS(最小关系型) 采用关系作为基本数据结构类型,但不能提供具有 关系完备性的数据子语言,或不支持数据独立性,因而 功能有相当的局限性。 2.基本关系型DBMS(关系完备型) 采用关系作为唯一基本数据结构类型,具有关系完 备的数据子语言,在一定程度上实现了数据的独立性, 确保用户能够依靠关系名、关键字值和属性名的结合用 逻辑方式访问数据库中的每一个数据。目前大多数关系 型DBMS都属于这种类型。 3.完全关系型(全关系型) 这类系统支持关系模型的所有特征,特别是数据结 构中域的概念、实体完整性和参照完整性。 3.2 关系代数 关系的数据操纵语言按照表达查询的方式可分为两 大类: 1.用对关系的运算来表达查询的方式,称为关系 代数; 2.用谓词来表达查询要求的方式,称为关系演 算。关系演算又可按谓词变元的基本对象是元组变量还 是域变量而分为元组关系演算和城关系演算两种。 这三种语言在表达能力上是彼此等价的,它们可以 作为评估实际系统中操纵语言能力的标准或基础。 关系代数是以关系为运算对象的一组高级运算的集 合,它的运算可分为以下两类。 3.2.1 传统的集合运算 传统的集合运

文档评论(0)

0520 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档