数据库原理与开发技术 课件 2.1 关系模型_第1页
数据库原理与开发技术 课件 2.1 关系模型_第2页
数据库原理与开发技术 课件 2.1 关系模型_第3页
数据库原理与开发技术 课件 2.1 关系模型_第4页
数据库原理与开发技术 课件 2.1 关系模型_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2章关系数据库基础本章主要内容:(1)关系模型的术语:元组、关系、属性、关系模式、主键、外键(2)规范化的关系:关系的6条性质(3)3类完整性规则:实体完整性、参照完整性、用户定义的完整性(4)关系代数运算:集合运算、代数运算(投影、选择、连接)(5)关系代数表达式2.1关系模型在机器世界建模中,描述数据的术语有记录、文件、字段(或数据项)、关键码等,这些在关系模型中,也有对应的术语。2.1.1基本术语定义2-1用二维表格表示实体集,用关键码表示实体之间联系的数据模型,称为关系模型(RelationalModel)。对关系模型的语义描述,称为关系模式(RelationalSchema)。通俗讲,关系模式就是关系名及所含属性的有序集合。例如,表2-1是一张学生信息登记表,它是一个二维表格,它对应的关系模式为:2.1.1基本术语学生模式(sNo,sName,Sex,Age,dtBirthDate,ID)学号(sNo)姓名(sName)性别(Sex)年龄(Age)出生日期(dtBirthDate)身份证号(ID)18020101张三M202000-08-09360502…000118060206李明M192001-02-18360301…000219070101刘燕F182002-10-06360802…0003表2-1:在关系模型中,实体的字段(Field)称为属性,一列(Column)就是一个属性;一行(Row)就是一条记录(Record),也称元组(Tuple),它表示一个具体的实体,元组的集合称为关系(Relation)或实例(Instance)。记录类型称为关系模式。2.1.1基本术语学生关系={(18020101,张三,M,20,2000-08-09,360502…0001),

(18060206,李明,M,19,2001-02-18,360301…0002),

(19070101,刘燕,F,18,2002-10-06,360802…0003)}例如,表2-1是学生模式当前的一个实例,用元组集合表示为:为了描述方便,对表格进行数学化,用英文字母来表示表格的内容。一般用大写字母A、B、C、…表示单个属性,用大写字母…、X、Y、Z表示属性集,用小写字母a、b、c等表示属性值。元组也称为行(Row),属性也称为列(Column)。2.1.1基本术语在关系中,属性的个数称为“元数”,也称“列数”,元组的个数称为“基数”,也称“行数”。图2-1为信息世界建模的一般术语及对应的关系模型的术语,其中关系模式为R(A,B,C,D),关系的元数(列数)为4,基数(行数)为3。2.1.1基本术语图2-1能唯一标识元组的一个属性或多个属性组成的集合,称为关键码(Key,也称键)。在关系模型中,有下列四种键:2.1.1基本术语(1)超键(SuperKey)。在关系中,能唯一标识元组的属性或属性集,称为超键。超键不是唯一的,例如,在学生模式中,{sNo}、{sNo,sName}、{sNo,ID}、{ID}均为超键。

(2)候选键(CandidateKey)。没有多余属性的超键,称为候选键。例如,{sNo,sName}不是候选键,但{sNo}、{ID}均为候选键。候选键中的属性,称为主属性,否则,称为非主属性。

(3)主键(PrimaryKey)。用户指定元组唯一标识符的候选键,称为主键。候选键可以有多个,但任一关系模式有且只有一个主键。例如,{sNo}。

(4)外键(ForeignKey)。如果关系模式R的属性K是另一个模式T的主键,则称属性K是模式R的外键,此时,称T为主表,R为附表。如图2-2所示就是主键与外键的模式图。在一个关系模式中,主键只能有一个,用“pk”标识,外键可以有多个,用“fk”标识。2.1.1基本术语图2-2含有主键与外键的关系模式图(箭头指向主表所在的主键)

1.域(Domain)2.1.2关系模型的数据结构:集合论之形式化定义

定义2-2域是指一组具有相同数据类型的值的集合。例如,整数、浮点数、字符串集合、{1,0}、{男,女}、{18,19,20,21}等,都可以是域。

在关系模型中,域必须命名。例如:

姓名={张三,李四,王二,刘英},性别={男,女},年龄={18,19,20,21}。

2.笛卡尔积(Cartesian

product)2.1.2关系模型的数据结构:集合论之形式化定义定义2-3给定一组域D1、D2、…、Dn,这些域可以相同或不相同,D1、D2、…、Dn的笛卡尔积定义为:其中,笛卡尔积中的每一个元素(d1,d2,…,dn)叫做一个n元组,简称元组(tuple)。元组中每个di是域Di的一个值,称为元组的一个分量。笛卡尔积中元素的个数,称为笛卡尔积的基数。例如,设有3个域:A={张三,李四},B={M,F},C={会计专业,数学专业,英语专业},则A、B、C的笛卡尔积为:2.1.2关系模型的数据结构:集合论之形式化定义A×B×C={(张三,M,会计专业),(张三,M,数学专业),(张三,M,英语专业),

(张三,F,会计专业),(张三,F,数学专业),(张三,F,英语专业),

(李四,M,会计专业),(李四,M,数学专业),(李四,M,英语专业),

(李四,F,会计专业),(李四,F,数学专业),(李四,F,英语专业)

}

3.关系(Relation)2.1.2关系模型的数据结构:集合论之形式化定义定义2-4笛卡尔积D1×D2×…×Dn的任一子集R称为域D1、D2、…、Dn上的一个关系,记为:R(D1,D2,…,Dn)。一般来说,域D1、D2、…、Dn上的笛卡尔积没有实际语义,只有受到某种约束下的真子集才有实际含义。例如,在表2-2中,规定:一个学生只能有一种性别、一个专业,这样对应的子集R,称为学生关系,如表2-3所示。表2-2A、B、C的笛卡尔积2.1.2关系模型的数据结构:集合论之形式化定义A(姓名)B(性别)C(专业)张三M会计专业张三M数学专业张三M英语专业张三F会计专业张三F数学专业张三F英语专业李四M会计专业李四M数学专业李四M英语专业李四F会计专业李四F数学专业李四F英语专业A(姓名)B(性别)C(专业)张三M数学专业李四F会计专业表2-3学生关系R因此,关系虽然是一张二维表格,但它是一张规范化了的二维表格。在关系模型中,对关系作了如下规范性限制:2.1.2关系模型的数据结构:集合论之形式化定义

(1)关系的每一列(属性)都有不同的名字。

(2)在关系的每一列中,其属性值是同类型的数据,必须来自同一个域。

(3)关系中的每个属性值都是不可分解的。

(4)关系中不允许出现重复元组。

(5)关系中不考虑元组间的顺序。

(6)关系中的属性列在理论上也是无序的,但在使用时,按习惯考虑列的顺序。以上6点,也是关系的性质,是关系必须满足的规范条件。规范化的关系,简称范式(NormalForm,NF),范式的概念将在第4章详细介绍。为了维护数据库中的数据与现实世界中的一致性,对关系数据库的数据进行插入、修改、删除等操作,必须遵循下列3类完整性规则。2.1.3关系模型的3类完整性规则在关系中,主键的属性值不能为空(null)。如果出现空值,则主键值就不能唯一标识元组。

1.实体完整性(EntityIntegrityRule)该规则表明,“不允许引用不存在的实体”。2.1.3关系模型的3类完整性规则设属性或属性组K是关系模式R的主键,同时K也是关系模式S的外键,则在S的关系中,K的取值要么为空,要么为R关系中的某个主键值。

2.参照完整性(ReferenceIntegrityRule)在上述定义中,主键所在的关系模式的关系,称为“参照关系”,也称主表(或父表);外键所在的关系模式的关系,称为“被参照关系”,也称附表(或子表)。例如:班级模式(cNo,className):主表(父表、参照关系)学生模式(sNo,sName,Sex,…,cNo):附表(子表、被参照关系)﹏例如,在学生模式中,属性sex(性别)只能取{“M”,“F”},可以如下定义:

Check(Sexin{“M”,“F”})2.1.3关系模型的3类完整性规则不同的R-DBMS根据其应用环境的不同,往往还需要一些特殊的约束条件。用户定义的完整性规则,就是这方面的反映。系统应提供定义和检验这类完整性规则的机制,以便用统一的系统方法来处理它们。

3.用户定义的完整性规则(User-definedIntegrityRule)学生的Age(年龄)定义为2位整数,范围太大,限制为15到28岁之间:

Check(AgeBetween15and28)或Check(Age>=15andAge<=28)任何一种数据模型都有三个重要组成部分:数据结构,数据操纵,数据完整性规则。关系模型也不例外。2.1.4关系模型的形式定义和优点(1)数据结构:数据库中全部数据及其相互联系都被表为“关系”(二维表格)的形式。

(2)数据操纵:关系模型提供一组完备的高级关系运算,以支持对数据库的各种操作。

(3)数据完整性规则:数据库中数据必须满足实体完整性,参照完整性和用户定义的完整性等三类完整性规则。与其它数据模型相比,关系模型的优点如下:2.1.4关系模型的形式定义和优点(1)关系模型提供单一的数据结构形式,具有高度的简明性和精确性。

(2)关系模型的逻辑结构和相应的操作完全独立于数据存储方式,数据独立性高。

(3)关系模型使数据库的研究建立在比较坚实的数学基础上。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论