数据库原理(第三版)(张红娟)ppt6.ppt

  1. 1、本文档共140页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库原理(第三版)(张红娟)ppt6

6.1 关系模型的基本概念   1.笛卡尔积(Cartesian Product)   1) 定义   设D1,D2,…,Dn都是有限集合,则D1,D2,…,Dn上的笛卡尔积为 D1×D2×…×Dn ={(d1,d2,…,dn)|di∈Di , i=1, 2, …, n} 其中每一个元素(d1,d2,…,dn)叫做一个n元组(n-tuple),简称元组(Tuple)。一个元组在集合Di上的值di称为该元组在Di上的分量(Component)。   一个元组是组成该元组的各分量的有序集合,而决不仅仅是各分量的集合。   若Di的基数(Cardinal Number)为mi,则D1×D2×…×Dn 的基数为   2) 举例   例6.1 设有两个集合:职工={张三,李四,王五};项目={管理,程控,数控}。则职工、项目上的笛卡尔积为 职工×项目={(张三,管理),(张三,程控),(张三,数控),(李四,管理),(李四,程控), ?(李四,数控),(王五,管理),(王五,程控),(王五,数控)}   笛卡尔积实际上就是一张二维表。例6.1的笛卡尔积“职工?×?项目”的对应二维表如表6-1所示。   例6.1中,职工的基数为3,项目的基数为3,则笛卡尔积“职工×项目”的基数为3×3=9。对应二维表也有9个元组。   2.关系(Relation)   笛卡尔积D1×D2×…×Dn的任意一个子集称为D1,D2,…,Dn上的一个n元关系,简称关系,又称为表(必须指出的是,笛卡尔积中元组的分量是有序的,因此,其子集也是有序的,但在这里,我们去掉了有序这一特性)。每个关系都有一个关系名。   关系是笛卡尔积的子集,所以关系也是一个二维表。二维表的表名就是关系名。二维表的每一列称为属性(Attribute)。因此,n元关系有n个属性。一个关系中每一个属性都有一个属性名,且各个属性的属性名都不相同。一个属性的取值范围Di(i=1, 2, …, n)称为该属性的域(Domain)。不同属性可以有相同的域。二维表的每一行值对应于一个元组。在关系中,列与列次序的交换、元组与元组次序的交换是不重要的。   由前述内容可知,实际的关系有三种类型:基本表(Table)、查询表(Query)和视图表(View)。基本表是实际存在的表;查询表是查询结果对应的表;视图表是由基本表和/或已定义视图导出的表,是虚表,只有定义,实际不存在。   在2.5.1节中已介绍了有关关系的其他术语,如主码,主属性等,这里不再重复介绍。 6.2 关 系 模 式   在2.5.1节中已介绍过一个关系的关系模式是该关系的关系名及其全部属性名的集合,一般表示为关系名(属性名1,属性名2,…,属性名n)。可见,关系是值;而关系模式是型,是对关系的描述。关系模式是稳定的;关系是变化的,关系是某一时刻关系模式的内容。关系模式常简称为关系。   但上述关系模式的定义还不全面(虽然一般情况下都是这样定义的),完整的关系模式定义为      R(U,D,dom,F)   其中:R为关系名;U为该关系所有属性名的集合;D为属性组U中属性所来自的域的集合;dom为属性向域映像的集合;F为属性间数据依赖关系的集合,将在第7章对其进行详细介绍。   关系模式常简记为   R(U) 或 R(A1,A2,…,An)   其中:R为关系名;Ai(i=1, 2, …, n)为属性名。域名及属性向域的映像一般即为定义中属性的类型和长度。   一个应用范围内,所有关系的集合就形成了一个关系数据库。对关系数据库的描述称为关系数据库模式,也称为关系数据库的型。   一个关系数据库模式包括:全部域的定义及在这些域上定义的全部关系模式。全部关系模式在某一时刻的值的集合(全部关系的集合)为关系数据库的值,简称为关系数据库。 6.3 关 系 代 数   关系代数(Relational Algebra)与商业RDBMS所提供的实际语言并不完全相同。关系代数是一种抽象的查询语言,但它是评估实际语言查询能力的标准。关系代数中给出的功能在实际语言中应该都能直接或间接实现。   关系代数是通过对关系的运算来表达查询的。它的运算对象是关系,运算结果也是关系。   关系代数的运算可分为两类。   (1) 基于传统集合运算的关系运算:并、差、交和广义笛卡尔积,其运算符号分别为∪、-、∩和×;   (2) 特殊的关系运算:投影、选择、连接和除,其运算符号分别为Π、σ、?和÷。其中,投影和选择是一元操作,其他是二元操作。   在两类集合运算中,还将用到两类辅助操作符。   (1) 比较运算符:>、≥、<、≤、=、≠;   (2) 逻辑运算符:∨(或)、∧(与)、┒(非)。 6.3.1 基于传统集合运算的关系运算   与传统

文档评论(0)

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

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

1亿VIP精品文档

相关文档