《关系三要素》PPT课件.ppt

上传人:wuy****n92 文档编号:80460398 上传时间:2023-03-23 格式:PPT 页数:42 大小:492KB
返回 下载 相关 举报
《关系三要素》PPT课件.ppt_第1页
第1页 / 共42页
《关系三要素》PPT课件.ppt_第2页
第2页 / 共42页
点击查看更多>>
资源描述

《《关系三要素》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《关系三要素》PPT课件.ppt(42页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、关系数据库简介关系数据库简介提出关系模型的是美国提出关系模型的是美国提出关系模型的是美国提出关系模型的是美国IBMIBM公司的公司的公司的公司的E.F.CoddE.F.Coddl l19701970年提出关系数据模型年提出关系数据模型年提出关系数据模型年提出关系数据模型E.F.Codd,“A Relational Model of Data for Large E.F.Codd,“A Relational Model of Data for Large Shared Data Banks”,Shared Data Banks”,Communication of the Communicatio

2、n of the ACMACM,1970,1970l l之后,提出了关系代数和关系演算的概念之后,提出了关系代数和关系演算的概念之后,提出了关系代数和关系演算的概念之后,提出了关系代数和关系演算的概念l l19721972年提出了关系的第一、第二、第三范式年提出了关系的第一、第二、第三范式年提出了关系的第一、第二、第三范式年提出了关系的第一、第二、第三范式l l19741974年提出了关系的年提出了关系的年提出了关系的年提出了关系的BCBC范式范式范式范式Edgar F.Codd 博士关系数据库之父美国工程院院士 原是英国人,原是英国人,原是英国人,原是英国人,19231923生于英格兰中部波

3、特兰生于英格兰中部波特兰生于英格兰中部波特兰生于英格兰中部波特兰 第二次世界大战时应征入伍,在皇家空军服役。第二次世界大战时应征入伍,在皇家空军服役。第二次世界大战时应征入伍,在皇家空军服役。第二次世界大战时应征入伍,在皇家空军服役。1942-19451942-1945年间任机长,参与了许多惊心动魄的空战。年间任机长,参与了许多惊心动魄的空战。年间任机长,参与了许多惊心动魄的空战。年间任机长,参与了许多惊心动魄的空战。英国牛津大学数学专业理学士及硕士学位,毕业后到英国牛津大学数学专业理学士及硕士学位,毕业后到英国牛津大学数学专业理学士及硕士学位,毕业后到英国牛津大学数学专业理学士及硕士学位,毕

4、业后到IBMIBM公司工作公司工作公司工作公司工作从事操从事操从事操从事操作系统和自动机理论研究作系统和自动机理论研究作系统和自动机理论研究作系统和自动机理论研究 年近年近年近年近4040重返密歇根大学进修计算机与通信专业,重返密歇根大学进修计算机与通信专业,重返密歇根大学进修计算机与通信专业,重返密歇根大学进修计算机与通信专业,19631963年获得硕士学位,年获得硕士学位,年获得硕士学位,年获得硕士学位,19651965年又获得博士学位。年又获得博士学位。年又获得博士学位。年又获得博士学位。6060年代后期开始数据库研究年代后期开始数据库研究年代后期开始数据库研究年代后期开始数据库研究,1

5、970,1970年年年年E.F.Codd E.F.Codd 博士提出关系模型概念博士提出关系模型概念博士提出关系模型概念博士提出关系模型概念(CACM,Vol.13,Vol.6,1970)(CACM,Vol.13,Vol.6,1970)19811981年获图灵奖,年获图灵奖,年获图灵奖,年获图灵奖,8484年从年从年从年从IBMIBM公司退休公司退休公司退休公司退休 还创办了一个研究所:关系研究所(还创办了一个研究所:关系研究所(还创办了一个研究所:关系研究所(还创办了一个研究所:关系研究所(The Relational InstituteThe Relational Institute)和一

6、个公司:)和一个公司:)和一个公司:)和一个公司:Codd&AssociationsCodd&Associations,进行关系数据库产品的研发、销售、,进行关系数据库产品的研发、销售、,进行关系数据库产品的研发、销售、,进行关系数据库产品的研发、销售、咨询等业务咨询等业务咨询等业务咨询等业务AnIntroductiontoDatabaseSystem2009-4-17AnIntroductiontoDatabaseSystem2009-4-17第二章第二章 关系数据库关系数据库2.1 2.1 关系数据结构及形式化定义关系数据结构及形式化定义关系数据结构及形式化定义关系数据结构及形式化定义2.

7、22.2 关系操作关系操作关系操作关系操作2.32.3 关系的完整性关系的完整性关系的完整性关系的完整性2.42.4 关系代数关系代数关系代数关系代数2.52.5 关系演算关系演算关系演算关系演算2.6 2.6 小结小结小结小结关系模型关系模型实现关系实现关系实现关系实现关系操作的语言操作的语言操作的语言操作的语言2.1 关系数据结构及形式化定义关系数据结构及形式化定义2.1.1 2.1.1 关系关系关系关系2.1.2 2.1.2 关系模式关系模式关系模式关系模式2.1.3 2.1.3 关系数据库关系数据库关系数据库关系数据库2.1.1 关系关系单一的数据结构单一的数据结构单一的数据结构单一的

8、数据结构-关系关系关系关系现实世界的实体以及实体间的各种联系均用关系来表示现实世界的实体以及实体间的各种联系均用关系来表示现实世界的实体以及实体间的各种联系均用关系来表示现实世界的实体以及实体间的各种联系均用关系来表示逻辑结构逻辑结构逻辑结构逻辑结构-二维表二维表二维表二维表 从用户角度,关系模型中数据的逻辑结构是一张二维表从用户角度,关系模型中数据的逻辑结构是一张二维表从用户角度,关系模型中数据的逻辑结构是一张二维表从用户角度,关系模型中数据的逻辑结构是一张二维表建立在集合代数的基础上建立在集合代数的基础上建立在集合代数的基础上建立在集合代数的基础上 域(域(Domain)域域域域是一组具有

9、相同数据类型的值的集合。例是一组具有相同数据类型的值的集合。例是一组具有相同数据类型的值的集合。例是一组具有相同数据类型的值的集合。例:整数整数整数整数实数实数实数实数介于某个取值范围的整数介于某个取值范围的整数介于某个取值范围的整数介于某个取值范围的整数长度指定长度的字符串集合长度指定长度的字符串集合长度指定长度的字符串集合长度指定长度的字符串集合男男男男,女女女女 .2.笛卡尔积(笛卡尔积(Cartesian Product)笛卡尔积笛卡尔积笛卡尔积笛卡尔积给定一组域给定一组域给定一组域给定一组域D D1 1,D D2 2,D Dn n,这些域中可以有相同这些域中可以有相同这些域中可以有相

10、同这些域中可以有相同的。的。的。的。D D1 1,D D2 2,D Dn n的的的的笛卡尔积笛卡尔积笛卡尔积笛卡尔积为:为:为:为:D D1 1D D2 2D Dn n(d d1 1,d d2 2,d dn n)d di i D Di i,i i1,21,2,.,n nl l所有域的所有取值的一个组合所有域的所有取值的一个组合所有域的所有取值的一个组合所有域的所有取值的一个组合l l不能重复不能重复不能重复不能重复 元组元组(TupleTuple)l l笛笛笛笛卡卡卡卡尔尔尔尔积积积积中中中中每每每每一一一一个个个个元元元元素素素素(d d1 1,d d2 2,d dn n)叫叫叫叫作作作作一

11、一一一个个个个n n元元元元组组组组(n-tuplen-tuple)或简称)或简称)或简称)或简称元组元组元组元组(Tuple)(Tuple)分量分量分量分量(ComponentComponent)l l笛卡尔积元素(笛卡尔积元素(笛卡尔积元素(笛卡尔积元素(d d1 1,d d2 2,d dn n)中的每一个值)中的每一个值)中的每一个值)中的每一个值d di i叫作一个叫作一个叫作一个叫作一个分量分量分量分量基数(基数(基数(基数(Cardinal numberCardinal number)l l若若若若D Di i(i i1 1,2 2,n n)为为为为有有有有限限限限集集集集,其其其

12、其基基基基数数数数为为为为mmi i(i i1 1,2 2,n n),则),则),则),则D D1 1D D2 2D Dn n的基数的基数的基数的基数MM为:为:为:为:笛卡尔积的表示方法笛卡尔积的表示方法笛卡尔积的表示方法笛卡尔积的表示方法l l笛卡尔积可表示为一个二维表笛卡尔积可表示为一个二维表笛卡尔积可表示为一个二维表笛卡尔积可表示为一个二维表l l表中的每行对应一个元组,表中的每列对应一个域表中的每行对应一个元组,表中的每列对应一个域表中的每行对应一个元组,表中的每列对应一个域表中的每行对应一个元组,表中的每列对应一个域3.关系(关系(Relation)1)1)关系关系关系关系D D1

13、 1D D2 2D Dn n的的的的子集子集子集子集叫作在域叫作在域叫作在域叫作在域D D1 1,D D2 2,D Dn n上的上的上的上的关系关系关系关系,表示为,表示为,表示为,表示为:R R(D D1 1,D D2 2,D Dn n)n nR R:关系名关系名关系名关系名n nn n:关系的关系的关系的关系的目目目目或或或或度度度度(DegreeDegree)2)2)元组元组元组元组关系中的每个元素是关系中的元组,通常用关系中的每个元素是关系中的元组,通常用关系中的每个元素是关系中的元组,通常用关系中的每个元素是关系中的元组,通常用 t t 表示。表示。表示。表示。3)3)单元关系与二元

14、关系单元关系与二元关系单元关系与二元关系单元关系与二元关系当当当当n n=1=1时,称该关系为时,称该关系为时,称该关系为时,称该关系为单元单元单元单元关系或关系或关系或关系或一元一元一元一元关系关系关系关系 当当当当n n=2=2时,称该关系为时,称该关系为时,称该关系为时,称该关系为二元二元二元二元关系(关系(关系(关系(Binary relationBinary relation)4)4)关系的表示关系的表示关系的表示关系的表示关系也是一个二维表,表的每行对应一个元组,表的每列关系也是一个二维表,表的每行对应一个元组,表的每列关系也是一个二维表,表的每行对应一个元组,表的每列关系也是一个

15、二维表,表的每行对应一个元组,表的每列对应一个域对应一个域对应一个域对应一个域5)5)属性属性属性属性n n关关关关系系系系中中中中不不不不同同同同列列列列可可可可以以以以对对对对应应应应相相相相同同同同的的的的域域域域 ,为为为为了了了了加加加加以以以以区区区区分分分分,必必必必须须须须对对对对每每每每列列列列起起起起一个名字,称为属性(一个名字,称为属性(一个名字,称为属性(一个名字,称为属性(AttributeAttribute),n n目关系必有目关系必有目关系必有目关系必有n n个属性个属性个属性个属性6)6)码码码码候选码(候选码(候选码(候选码(Candidate keyCand

16、idate key)若关系中的某一属性组的值能唯一地标识一个元组,则称该若关系中的某一属性组的值能唯一地标识一个元组,则称该若关系中的某一属性组的值能唯一地标识一个元组,则称该若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码属性组为候选码属性组为候选码属性组为候选码 全码(全码(全码(全码(All-keyAll-key)关系模式的所有属性组是这个关系模式的候选码,称为全码关系模式的所有属性组是这个关系模式的候选码,称为全码关系模式的所有属性组是这个关系模式的候选码,称为全码关系模式的所有属性组是这个关系模式的候选码,称为全码主码主码主码主码((Primary key)Prim

17、ary key)若一个关系有多个候选码,则选定其中一个为主码若一个关系有多个候选码,则选定其中一个为主码若一个关系有多个候选码,则选定其中一个为主码若一个关系有多个候选码,则选定其中一个为主码主属性主属性主属性主属性:候选码的每一个属性称为主属性候选码的每一个属性称为主属性候选码的每一个属性称为主属性候选码的每一个属性称为主属性7)7)三类关系三类关系三类关系三类关系基本关系基本关系基本关系基本关系(基本表或基表)(基本表或基表)(基本表或基表)(基本表或基表)实际存在的表,是实际存储数据的逻辑表示实际存在的表,是实际存储数据的逻辑表示实际存在的表,是实际存储数据的逻辑表示实际存在的表,是实际

18、存储数据的逻辑表示查询表查询表查询表查询表查询结果对应的表查询结果对应的表查询结果对应的表查询结果对应的表视图表视图表视图表视图表由基本表或其他视图表导出的表,是虚表,不对由基本表或其他视图表导出的表,是虚表,不对由基本表或其他视图表导出的表,是虚表,不对由基本表或其他视图表导出的表,是虚表,不对应实际存储的数据应实际存储的数据应实际存储的数据应实际存储的数据8)基本关系的性质基本关系的性质 列是同质的(列是同质的(列是同质的(列是同质的(HomogeneousHomogeneous):来自同一个域。):来自同一个域。):来自同一个域。):来自同一个域。不同的列可出自同一个域不同的列可出自同一

19、个域不同的列可出自同一个域不同的列可出自同一个域n n其中的每一列称为一个属性其中的每一列称为一个属性其中的每一列称为一个属性其中的每一列称为一个属性n n不同的属性要给予不同的属性名不同的属性要给予不同的属性名不同的属性要给予不同的属性名不同的属性要给予不同的属性名 列的顺序无所谓,列的次序可以任意交换列的顺序无所谓,列的次序可以任意交换列的顺序无所谓,列的次序可以任意交换列的顺序无所谓,列的次序可以任意交换 任意两个元组的候选码不能相同任意两个元组的候选码不能相同任意两个元组的候选码不能相同任意两个元组的候选码不能相同 行的顺序无所谓,行的次序可以任意交换行的顺序无所谓,行的次序可以任意交

20、换行的顺序无所谓,行的次序可以任意交换行的顺序无所谓,行的次序可以任意交换分量必须取原子值,即每个分量必须是不可再分的数据项。分量必须取原子值,即每个分量必须是不可再分的数据项。分量必须取原子值,即每个分量必须是不可再分的数据项。分量必须取原子值,即每个分量必须是不可再分的数据项。同质的列学号学号学号学号姓名姓名姓名姓名性别性别性别性别年龄年龄年龄年龄曾用名曾用名曾用名曾用名99019901张三张三男男2020张狗子张狗子99029902李四李四女女1818李朋李朋王五王五990399031 11919王麻子王麻子99049904赵六赵六2 21981/2/281981/2/28赵薇赵薇关系性

21、质2不同的属性名学号学号学号学号姓名姓名姓名姓名性别性别性别性别年龄年龄年龄年龄姓名姓名姓名姓名99019901张三张三男男2020张狗子张狗子99029902李四李四女女1818李朋李朋99039903王五王五男男1919王麻子王麻子99049904赵六赵六女女2020赵薇赵薇姓名姓名2曾用名曾用名返回返回关系性质6分量是原子父父父父母母母母孩子孩子孩子孩子李男李男王男王男丁女丁女肖女肖女李一李一李二李二王一王一父父父父母母母母孩子孩子孩子孩子大大大大小小小小李男李男王男王男丁女丁女肖女肖女李一李一王一王一李二李二父父父父母母母母孩子孩子孩子孩子李男李男李男李男王男王男丁女丁女丁女丁女肖女肖

22、女李一李一李二李二王一王一父父父父母母母母大孩大孩大孩大孩小孩小孩小孩小孩李男李男王男王男丁女丁女肖女肖女李一李一王一王一李二李二非规范化关系非规范化关系规范化关系规范化关系2.1.2 关系模式关系模式1.1.定义定义定义定义:关系模式是对关系的描述关系模式是对关系的描述关系模式是对关系的描述关系模式是对关系的描述关系模式可以形式化地表示为:关系模式可以形式化地表示为:关系模式可以形式化地表示为:关系模式可以形式化地表示为:R R(U U,D D,DOMDOM,F F)R:R:关系名关系名关系名关系名 U U:组成该关系的属性名集合组成该关系的属性名集合组成该关系的属性名集合组成该关系的属性名

23、集合D D:属性组属性组属性组属性组U U中属性所来自的域中属性所来自的域中属性所来自的域中属性所来自的域 DOM:DOM:属性向域的映象集合属性向域的映象集合属性向域的映象集合属性向域的映象集合 F F:属性间的数据依赖关系集合属性间的数据依赖关系集合属性间的数据依赖关系集合属性间的数据依赖关系集合关系模式通常可以简记为关系模式通常可以简记为关系模式通常可以简记为关系模式通常可以简记为 R(U)R(U)或或或或 R(A R(A1 1,A A2 2,A An n)n nA A1 1,A A2 2,A An n :属性名属性名属性名属性名注:域名及属性向域的映象常常直接说明为属性的类型、长度注:

24、域名及属性向域的映象常常直接说明为属性的类型、长度注:域名及属性向域的映象常常直接说明为属性的类型、长度注:域名及属性向域的映象常常直接说明为属性的类型、长度l l关系模式关系模式关系模式关系模式n n对关系的描述对关系的描述对关系的描述对关系的描述n n静态的、稳定的静态的、稳定的静态的、稳定的静态的、稳定的l l关系关系关系关系n n关系模式在某一时刻的状态或内容关系模式在某一时刻的状态或内容关系模式在某一时刻的状态或内容关系模式在某一时刻的状态或内容n n动态的、随时间不断变化的动态的、随时间不断变化的动态的、随时间不断变化的动态的、随时间不断变化的l l关系模式和关系往往统称为关系关系

25、模式和关系往往统称为关系关系模式和关系往往统称为关系关系模式和关系往往统称为关系2.关系模式与关系关系模式与关系2.1.3 关系数据库关系数据库关系数据库关系数据库关系数据库关系数据库在在在在一一一一个个个个给给给给定定定定的的的的应应应应用用用用领领领领域域域域中中中中,所所所所有有有有实实实实体体体体及及及及实实实实体体体体之之之之间间间间联联联联系系系系的的的的关关关关系系系系的集合构成一个关系数据库。的集合构成一个关系数据库。的集合构成一个关系数据库。的集合构成一个关系数据库。关关关关系系系系数数数数据据据据库库库库的的的的型型型型:关关关关系系系系数数数数据据据据库库库库模模模模式式

26、式式,对对对对关关关关系系系系数数数数据据据据库库库库的的的的描描描描述。述。述。述。关关关关系系系系数数数数据据据据库库库库的的的的值值值值:关关关关系系系系模模模模式式式式在在在在某某某某一一一一时时时时刻刻刻刻对对对对应应应应的的的的关关关关系系系系的的的的集集集集合,简称为关系数据库合,简称为关系数据库合,简称为关系数据库合,简称为关系数据库关系数据库模式例整个数据整个数据库库某关系的结构某关系的结构某关系的实例某关系的实例第二章第二章 关系数据库关系数据库2.1 2.1 关系模型概述关系模型概述关系模型概述关系模型概述2.2 2.2 关系操作关系操作关系操作关系操作2.3 2.3 关

27、系的完整性关系的完整性关系的完整性关系的完整性2.4 2.4 关系代数关系代数关系代数关系代数2.5 2.5 关系演算关系演算关系演算关系演算2.6 2.6 小结小结小结小结2.2.1基本关系操作基本关系操作 常用的关系操作常用的关系操作常用的关系操作常用的关系操作l l查询查询查询查询:选择、投影、连接、除、并、交、差:选择、投影、连接、除、并、交、差:选择、投影、连接、除、并、交、差:选择、投影、连接、除、并、交、差l l数据更新数据更新数据更新数据更新:插入、删除、修改:插入、删除、修改:插入、删除、修改:插入、删除、修改l l查询的表达能力是其中最主要的部分查询的表达能力是其中最主要的

28、部分查询的表达能力是其中最主要的部分查询的表达能力是其中最主要的部分l l选择、投影、并、差、笛卡尔积是选择、投影、并、差、笛卡尔积是选择、投影、并、差、笛卡尔积是选择、投影、并、差、笛卡尔积是5 5种基本操作种基本操作种基本操作种基本操作 关系操作的特点关系操作的特点关系操作的特点关系操作的特点l l集合操作方式:操作的对象和结果都是集合,集合操作方式:操作的对象和结果都是集合,集合操作方式:操作的对象和结果都是集合,集合操作方式:操作的对象和结果都是集合,一次一集合一次一集合一次一集合一次一集合的方式的方式的方式的方式2.2.2 关系数据库语言的分类关系数据库语言的分类 关系代数语言关系代

29、数语言关系代数语言关系代数语言 (2.42.4节讲解)节讲解)节讲解)节讲解)l l用对关系的运算来表达查询要求用对关系的运算来表达查询要求用对关系的运算来表达查询要求用对关系的运算来表达查询要求l l代表:代表:代表:代表:ISBLISBL关系演算语言:用谓词来表达查询要求关系演算语言:用谓词来表达查询要求关系演算语言:用谓词来表达查询要求关系演算语言:用谓词来表达查询要求l l元组关系演算语言元组关系演算语言元组关系演算语言元组关系演算语言谓词变元的基本对象是元组变量谓词变元的基本对象是元组变量谓词变元的基本对象是元组变量谓词变元的基本对象是元组变量代表:代表:代表:代表:APLHA,QU

30、ELAPLHA,QUELl l域关系演算语言域关系演算语言域关系演算语言域关系演算语言 谓词变元的基本对象是域变量谓词变元的基本对象是域变量谓词变元的基本对象是域变量谓词变元的基本对象是域变量代表:代表:代表:代表:QBEQBE具有关系代数和关系演算双重特点的语言(第三章讲解)具有关系代数和关系演算双重特点的语言(第三章讲解)具有关系代数和关系演算双重特点的语言(第三章讲解)具有关系代数和关系演算双重特点的语言(第三章讲解)l l代表:代表:代表:代表:SQLSQL(Structured Query LanguageStructured Query Language)关系数据库语言的分类关系数

31、据库语言的分类2.3 关系的完整性关系的完整性完整性是数据模型的一个非常重要的方面。完整性是数据模型的一个非常重要的方面。完整性是数据模型的一个非常重要的方面。完整性是数据模型的一个非常重要的方面。关系数据库从多个方面来保证数据的完整性。在创建关系数据库从多个方面来保证数据的完整性。在创建关系数据库从多个方面来保证数据的完整性。在创建关系数据库从多个方面来保证数据的完整性。在创建数据库时,需要通过相关的措施来保证以后对数据库数据库时,需要通过相关的措施来保证以后对数据库数据库时,需要通过相关的措施来保证以后对数据库数据库时,需要通过相关的措施来保证以后对数据库中的数据进行操纵时,数据是正确的、

32、一致的。中的数据进行操纵时,数据是正确的、一致的。中的数据进行操纵时,数据是正确的、一致的。中的数据进行操纵时,数据是正确的、一致的。关系数据库提供:关系数据库提供:关系数据库提供:关系数据库提供:l l实体完整性实体完整性实体完整性实体完整性l l参照完整性参照完整性参照完整性参照完整性l l用户定义的完整性。用户定义的完整性。用户定义的完整性。用户定义的完整性。关系的两个不变性关系的两个不变性2.3.1 实体完整性实体完整性实体完整性规则(实体完整性规则(实体完整性规则(实体完整性规则(Entity IntegrityEntity Integrity)若属性若属性若属性若属性A A是基本关

33、系是基本关系是基本关系是基本关系R R的主属性,则属性的主属性,则属性的主属性,则属性的主属性,则属性A A不能取空值不能取空值不能取空值不能取空值l l注意:是基本关系的所有主属性都不能取空值注意:是基本关系的所有主属性都不能取空值注意:是基本关系的所有主属性都不能取空值注意:是基本关系的所有主属性都不能取空值l l如如如如:选选选选修修修修(学学学学号号号号,课课课课程程程程号号号号,成成成成绩绩绩绩),则则则则(学学学学号号号号,课课课课程程程程号)为主码,则学号和课程号都不能取空值。号)为主码,则学号和课程号都不能取空值。号)为主码,则学号和课程号都不能取空值。号)为主码,则学号和课程

34、号都不能取空值。实体完整性实体完整性(续续)实体完整性规则的说明实体完整性规则的说明实体完整性规则的说明实体完整性规则的说明l l(1)(1)实实实实体体体体完完完完整整整整性性性性规规规规则则则则是是是是针针针针对对对对基基基基本本本本关关关关系系系系而而而而言言言言的的的的。一一一一个个个个基基基基本本本本表表表表通通通通常对应现实世界的一个实体集。常对应现实世界的一个实体集。常对应现实世界的一个实体集。常对应现实世界的一个实体集。l l(2)(2)现现现现实实实实世世世世界界界界中中中中的的的的实实实实体体体体是是是是可可可可区区区区分分分分的的的的,即即即即它它它它们们们们具具具具有有

35、有有某某某某种种种种唯唯唯唯一一一一性性性性标识。标识。标识。标识。l l(3)(3)关系模型中以主码作为唯一性标识。关系模型中以主码作为唯一性标识。关系模型中以主码作为唯一性标识。关系模型中以主码作为唯一性标识。l l(4)(4)主码中的属性即主属性不能取空值。主码中的属性即主属性不能取空值。主码中的属性即主属性不能取空值。主码中的属性即主属性不能取空值。主主主主属属属属性性性性取取取取空空空空值值值值,就就就就说说说说明明明明存存存存在在在在某某某某个个个个不不不不可可可可标标标标识识识识的的的的实实实实体体体体,即即即即存存存存在在在在不不不不可可可可区区区区分分分分的的的的实实实实体体

36、体体,这这这这与与与与第第第第(2 2)点点点点相相相相矛矛矛矛盾盾盾盾,因因因因此此此此这这这这个个个个规规规规则则则则称称称称为为为为实实实实体完整性体完整性体完整性体完整性2.3.2 参照完整性参照完整性1.关系间的引用关系间的引用2.外码外码3.参照完整性规则参照完整性规则1.关系间的引用关系间的引用在在在在关关关关系系系系模模模模型型型型中中中中实实实实体体体体及及及及实实实实体体体体间间间间的的的的联联联联系系系系都都都都是是是是用用用用关关关关系系系系来来来来描描描描 述的,因此述的,因此述的,因此述的,因此 自然存在着关系与关系间的引用。自然存在着关系与关系间的引用。自然存在着

37、关系与关系间的引用。自然存在着关系与关系间的引用。例例例例1 1 学生实体、专业实体学生实体、专业实体学生实体、专业实体学生实体、专业实体学生(学生(学生(学生(学号学号学号学号,姓名,性别,姓名,性别,姓名,性别,姓名,性别,专业号专业号专业号专业号,年龄),年龄),年龄),年龄)专业(专业(专业(专业(专业号专业号专业号专业号,专业名),专业名),专业名),专业名)主码主码 外码外码v学生关系引用了专业关系的主码学生关系引用了专业关系的主码“专业号专业号”。v 学生关系中的学生关系中的“专业号专业号”值必须是确实存在的专业的专业号值必须是确实存在的专业的专业号,即专,即专业业 关系中有该专

38、业的记录。关系中有该专业的记录。关系间的引用关系间的引用(续续)例例例例2 2 学生、课程、学生与课程之间的多对多联系学生、课程、学生与课程之间的多对多联系学生、课程、学生与课程之间的多对多联系学生、课程、学生与课程之间的多对多联系 学生(学生(学生(学生(学号学号学号学号,姓名,性别,专业号,年龄)姓名,性别,专业号,年龄)姓名,性别,专业号,年龄)姓名,性别,专业号,年龄)课程(课程(课程(课程(课程号课程号课程号课程号,课程名,学分),课程名,学分),课程名,学分),课程名,学分)选修(选修(选修(选修(学号学号学号学号,课程号课程号课程号课程号,成绩),成绩),成绩),成绩)关系间的引

39、用关系间的引用(续续)例例例例3 3 学生实体及其内部的一对多联系学生实体及其内部的一对多联系学生实体及其内部的一对多联系学生实体及其内部的一对多联系 学生(学生(学生(学生(学号学号学号学号,姓名,性别,专业号,年龄,姓名,性别,专业号,年龄,姓名,性别,专业号,年龄,姓名,性别,专业号,年龄,班长班长班长班长)v“学号学号”是主码,是主码,“班长班长”是外码,它引用了本关系的是外码,它引用了本关系的“学号学号”v“班长班长”必须是确实存在的学生的学号必须是确实存在的学生的学号 2外码(外码(Foreign Key)设设设设F F是是是是基基基基本本本本关关关关系系系系R R的的的的一一一一

40、个个个个或或或或一一一一组组组组属属属属性性性性,但但但但不不不不是是是是关关关关系系系系R R的的的的码码码码。如如如如果果果果F F与与与与基基基基本本本本关关关关系系系系S S的的的的主主主主码码码码K Ks s相相相相对对对对应应应应,则则则则称称称称F F是是是是基基基基本本本本关关关关系系系系R R的的的的外码外码外码外码基本关系基本关系基本关系基本关系R R称称称称为为为为参照关系参照关系参照关系参照关系(Referencing RelationReferencing Relation)基本关系基本关系基本关系基本关系S S称称称称为为为为被参照关系被参照关系被参照关系被参照关系

41、(Referenced RelationReferenced Relation)或或或或目标关系目标关系目标关系目标关系(Target RelationTarget Relation)外码外码(续续)例例例例1 1:学生关系的:学生关系的:学生关系的:学生关系的“专业号与专业关系的主码专业号与专业关系的主码专业号与专业关系的主码专业号与专业关系的主码“专业号专业号专业号专业号”相对应相对应相对应相对应n n“专业号专业号专业号专业号”属性是学生关系的外码属性是学生关系的外码属性是学生关系的外码属性是学生关系的外码n n专业关系是被参照关系,学生关系为参照关系专业关系是被参照关系,学生关系为参照

42、关系专业关系是被参照关系,学生关系为参照关系专业关系是被参照关系,学生关系为参照关系 外码外码(续续)例例例例2 2:选修关系的选修关系的选修关系的选修关系的“学号学号学号学号”与学生关系的主码与学生关系的主码与学生关系的主码与学生关系的主码“学号学号学号学号”相对应相对应相对应相对应 选修关系的选修关系的选修关系的选修关系的“课程号课程号课程号课程号”与课程关系的主码与课程关系的主码与课程关系的主码与课程关系的主码“课程号课程号课程号课程号”相对应相对应相对应相对应l l“学号学号学号学号”和和和和“课程号课程号课程号课程号”是选修关系的外码是选修关系的外码是选修关系的外码是选修关系的外码l

43、 l学生关系和课程关系均为被参照关系学生关系和课程关系均为被参照关系学生关系和课程关系均为被参照关系学生关系和课程关系均为被参照关系l l选修关系为参照关系选修关系为参照关系选修关系为参照关系选修关系为参照关系 外码外码(续续)例例例例3 3:“班长班长班长班长”与本身的主码与本身的主码与本身的主码与本身的主码“学号学号学号学号”相对应相对应相对应相对应l l“班长班长班长班长”是外码是外码是外码是外码l l学生关系既是参照关系也是被参照关系学生关系既是参照关系也是被参照关系学生关系既是参照关系也是被参照关系学生关系既是参照关系也是被参照关系 关系关系关系关系R R和和和和S S不一定是不同的

44、关系不一定是不同的关系不一定是不同的关系不一定是不同的关系目标关系目标关系目标关系目标关系S S的主码的主码的主码的主码K Ks s 和参照关系的外码和参照关系的外码和参照关系的外码和参照关系的外码F F必须定义在同一个(或必须定义在同一个(或必须定义在同一个(或必须定义在同一个(或一组)域上一组)域上一组)域上一组)域上外码并不一定要与相应的主码同名外码并不一定要与相应的主码同名外码并不一定要与相应的主码同名外码并不一定要与相应的主码同名 当外码与相应的主码属于不同关系时,往往取相同的名当外码与相应的主码属于不同关系时,往往取相同的名当外码与相应的主码属于不同关系时,往往取相同的名当外码与相

45、应的主码属于不同关系时,往往取相同的名 字,以便于识别字,以便于识别字,以便于识别字,以便于识别3.参照完整性规则参照完整性规则参照完整性规则参照完整性规则参照完整性规则参照完整性规则 若若若若属属属属性性性性(或或或或属属属属性性性性组组组组)F F是是是是基基基基本本本本关关关关系系系系R R的的的的外外外外码码码码,它它它它与与与与基基基基本本本本关关关关系系系系S S的的的的主主主主码码码码K Ks s相相相相对对对对应应应应(基基基基本本本本关关关关系系系系R R和和和和S S不不不不一一一一定定定定是是是是不不不不同同同同的的的的关关关关系系系系),则则则则对对对对于于于于R R中

46、中中中每个元组在每个元组在每个元组在每个元组在F F上的值必须为:上的值必须为:上的值必须为:上的值必须为:n n或者取空值(或者取空值(或者取空值(或者取空值(F F的每个属性值均为空值)的每个属性值均为空值)的每个属性值均为空值)的每个属性值均为空值)n n或者等于或者等于或者等于或者等于S S中某个元组的主码值中某个元组的主码值中某个元组的主码值中某个元组的主码值学号学号学号学号姓名姓名姓名姓名所在系所在系所在系所在系99019901990299029903990399049904张三张三李四李四王五王五赵六赵六计算机计算机计算机计算机计算机计算机计算机计算机课程号课程号课程号课程号课程

47、名课程名课程名课程名学时数学时数学时数学时数C01C01C02C02C03C03C04C04高等数学高等数学数据结构数据结构操作系统操作系统数据库数据库100100707080806060学号学号学号学号课程号课程号课程号课程号成绩成绩成绩成绩9901990199019901990299029904990499049904C01C01C02C02C04C04C04C04C03C0390908080909085857070学生关系学生关系课程关系课程关系选修关系选修关系外部键外部键外部键外部键主键主键主键主键例例例例1 1 :选修(选修(选修(选修(学号学号学号学号,课程号课程号课程号课程号,成

48、绩),成绩),成绩),成绩)“学号学号学号学号”和和和和“课程号课程号课程号课程号”可能的取值可能的取值可能的取值可能的取值 :(1 1)选修关系中的主属性,不能取空值选修关系中的主属性,不能取空值选修关系中的主属性,不能取空值选修关系中的主属性,不能取空值 (2 2)只能取相应被参照关系中已经存在的主码值)只能取相应被参照关系中已经存在的主码值)只能取相应被参照关系中已经存在的主码值)只能取相应被参照关系中已经存在的主码值例例例例2 2:学生(学号,姓名,性别,专业号,年龄,班长)学生(学号,姓名,性别,专业号,年龄,班长)学生(学号,姓名,性别,专业号,年龄,班长)学生(学号,姓名,性别,

49、专业号,年龄,班长)“班长班长班长班长”属性值可以取两类值:属性值可以取两类值:属性值可以取两类值:属性值可以取两类值:(1 1)空值,表示该学生所在班级尚未选出班长)空值,表示该学生所在班级尚未选出班长)空值,表示该学生所在班级尚未选出班长)空值,表示该学生所在班级尚未选出班长(2 2)非空值,该值必须是本关系中某个元组的学号值)非空值,该值必须是本关系中某个元组的学号值)非空值,该值必须是本关系中某个元组的学号值)非空值,该值必须是本关系中某个元组的学号值2.3.3 用户定义的完整性用户定义的完整性针针针针对对对对某某某某一一一一具具具具体体体体关关关关系系系系数数数数据据据据库库库库的的

50、的的约约约约束束束束条条条条件件件件,反反反反映映映映某某某某一一一一具具具具体体体体应应应应用用用用所所所所涉及的数据必须满足的语义要求涉及的数据必须满足的语义要求涉及的数据必须满足的语义要求涉及的数据必须满足的语义要求如规定某一属性取值范围在如规定某一属性取值范围在如规定某一属性取值范围在如规定某一属性取值范围在0-1000-100之间。之间。之间。之间。可在定义关系结构时设置,还可通过触发器、规则等来设置可在定义关系结构时设置,还可通过触发器、规则等来设置可在定义关系结构时设置,还可通过触发器、规则等来设置可在定义关系结构时设置,还可通过触发器、规则等来设置关关关关系系系系模模模模型型型

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁