03第03章 关系模型[1]_第1页
03第03章 关系模型[1]_第2页
03第03章 关系模型[1]_第3页
03第03章 关系模型[1]_第4页
03第03章 关系模型[1]_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

1、数据库原理及应用数据库原理及应用ACCESSACCESS计算中心计算中心第三章第三章 关系模型关系模型数据库原理及应用(Access版) 本章将要了解什么问题本章将要了解什么问题? 关系模型如何来表征现实世界关系模型如何来表征现实世界? 为什么目前主流数据库都采用关系模型,为什么目前主流数据库都采用关系模型,其优势体现在哪些方面其优势体现在哪些方面数据库原理及应用(Access版) 本章内容本章内容4.3.2.1.5.关系模型的基本概念关系模型的基本概念关系的数学定义关系的数学定义关系代数关系代数关系数据库规范化理论关系数据库规范化理论关系数据库的优势关系数据库的优势数据库原理及应用(Acce

2、ss版) 3.1 3.1 关系模型的基本概念关系模型的基本概念v关系关系:没有重复行和重复列的:没有重复行和重复列的二维表二维表。v元组元组:二维表中的每一:二维表中的每一行行,存储文件中的一条,存储文件中的一条记录记录。v属性属性:二维表中的每一:二维表中的每一列列,记录中的数据项或,记录中的数据项或字段字段。v域域:属性的:属性的取值范围取值范围。v关系模式关系模式:对关系的描述,即二维表的表头。:对关系的描述,即二维表的表头。学号学号姓名姓名性别性别生日生日入校成绩入校成绩2008100120081001王小平王小平男男1990.101990.1059059020081002200810

3、02张梅张梅女女1991.11991.15795792008100320081003李超李超男男1990.51990.5581581如:学生(学号,姓名,如:学生(学号,姓名,入校成绩),入校成绩)数据库原理及应用(Access版) 3.1 3.1 关系模型的基本概念关系模型的基本概念v关键字(码)关键字(码):确定不同元组的属性或属性组合。:确定不同元组的属性或属性组合。学号学号姓名姓名性别性别身份证号码身份证号码2008100120081001王小平王小平男男5106101990102000165106101990102000162008100220081002张梅张梅女女51700319

4、91010600295170031991010600292008100320081003李超李超男男612003199005210018612003199005210018n主关键字(主码):从候选关键字中选出一个作主关键字(主码):从候选关键字中选出一个作为主关键字,在关系中只能有一个主关键字。为主关键字,在关系中只能有一个主关键字。n候选关键字(候选码):能够唯一区分、确定不候选关键字(候选码):能够唯一区分、确定不同元组的属性或属性组合。同元组的属性或属性组合。数据库原理及应用(Access版) 3.1 3.1 关系模型的基本概念关系模型的基本概念v主属性主属性:包含在主码中的各个属性。

5、:包含在主码中的各个属性。v全码全码:如果一个码包含了所有的属性,这个:如果一个码包含了所有的属性,这个码就是全码。码就是全码。v外关键字外关键字(外码):如果关系中某个属性或(外码):如果关系中某个属性或属性组合并非关键字,但却是另一个关系的属性组合并非关键字,但却是另一个关系的主关键字,则称此属性或属性组合为本关系主关键字,则称此属性或属性组合为本关系的外关键字。的外关键字。数据库原理及应用(Access版) 关系模型的基本概念举例关系模型的基本概念举例关键字关键字(码码)外关键字外关键字(外码外码)学号学号姓名姓名性别性别S001S001张雨张雨男男S002S002李非李非女女S003S

6、003王小华王小华男男S004S004金阳金阳女女课程号课程号课程名课程名C01C01英语英语C02C02高等数学高等数学C03C03数据库数据库学号学号课程课程号号S001S001C01C01S001S001C02C02S002S002C01C01S002S002C03C03表:学生表:学生表:课程表:课程关系模式关系模式:课程(课程号,课程名):课程(课程号,课程名)关系关系关系关系关系关系元组元组属性属性性别属性的性别属性的域域:男、女男、女 选课选课表的表的学号学号和和课课程号程号构成该表的构成该表的全码全码表:选课表:选课数据库原理及应用(Access版) 3.2 3.2 关系的数学

7、定义关系的数学定义p在关系模型中,数据是以二维表的形式存在在关系模型中,数据是以二维表的形式存在的,这个的,这个二维表二维表就叫做就叫做关系关系。p关系理论关系理论是以是以集合代数集合代数理论为基础的,因此,理论为基础的,因此,我们可以用集合代数给出二维表的我们可以用集合代数给出二维表的“关系关系”定义。定义。p为了从集合代数理论的角度给出关系的定义,为了从集合代数理论的角度给出关系的定义,我们先引入我们先引入集合集合、元组元组和和笛卡尔积笛卡尔积的概念。的概念。数据库原理及应用(Access版) 3.2 3.2 关系的数学定义关系的数学定义v集合集合没有严格的形式定义,通常由某一类具有相同属

8、性没有严格的形式定义,通常由某一类具有相同属性的元素组成。的元素组成。v元组元组n定义:几个元素组成的一个定义:几个元素组成的一个有序组有序组。n表示:用圆括号括起来的一些元素,元素之间使用表示:用圆括号括起来的一些元素,元素之间使用逗号分隔。(逗号分隔。(s001, s001, 张雨张雨, ,男)男)n与集合不同与集合不同:元组与顺序有关。:元组与顺序有关。n在关系数据库中的含义:一个元组就是表中的一行在关系数据库中的含义:一个元组就是表中的一行数据。数据。数据库原理及应用(Access版) 3.2 3.2 关系的数学定义关系的数学定义v集合的笛卡尔乘积集合的笛卡尔乘积n定义:假设集合定义:

9、假设集合A=a,bA=a,b,集合,集合B=0,1,2B=0,1,2,则两,则两个集合的笛卡尔积为个集合的笛卡尔积为(a,0),(a,1),(a,2),(b,0),(b,1),(b,2)(a,0),(a,1),(a,2),(b,0),(b,1),(b,2)。可。可以扩展到多个集合的情况。以扩展到多个集合的情况。n举例:举例:如果如果A A表示某学校学生的集合,表示某学校学生的集合,B B表示该学表示该学校所有课程的集合,则校所有课程的集合,则A A与与B B的笛卡尔积表示所有的笛卡尔积表示所有可能的选课情况。可能的选课情况。n数学表示:数学表示:D DA A1 1A A2 2A An n(A

10、A1 1、A A2 2、均为均为任意集合)任意集合)数据库原理及应用(Access版) 3.2 3.2 关系的数学定义关系的数学定义v关系关系n定义:定义:A A1 1、A A2 2、A An n为任意集合,为任意集合, A A1 1A A2 2A An n的任意一个子集称为的任意一个子集称为A A1 1、A A2 2、A An n上的上的n n元关系。元关系。n举例:举例:A A1 1 张雨张雨, ,李非李非 ,A A2 2 英语英语, ,高等数学高等数学, ,数据库数据库 ,则,则R=(R=(张雨张雨, ,英语英语),(),(张雨张雨, ,高等数高等数学学),(),(李非李非, ,英语英语

11、)n构造关系模式:构造关系模式: 选课表(姓名,课程名)选课表(姓名,课程名)n提示:提示:关系是一个集合,其组成元素是元组而不关系是一个集合,其组成元素是元组而不是组成元组的元素。是组成元组的元素。数据库原理及应用(Access版) 3.2 3.2 关系的数学定义关系的数学定义v关系的完整性约束关系的完整性约束n目的:目的:避免数据错误或混乱,需建立数据完整性避免数据错误或混乱,需建立数据完整性的约束机制来保证数据的正确和有效。的约束机制来保证数据的正确和有效。n内容:内容:关系中的数据及其具有关联关系的数据间关系中的数据及其具有关联关系的数据间所必须遵循的制约条件和依存关系。包括:实体所必

12、须遵循的制约条件和依存关系。包括:实体完整性、域完整性、参照完整性和用户定义完整完整性、域完整性、参照完整性和用户定义完整性。性。数据库原理及应用(Access版) 3.2 3.2 关系的数学定义关系的数学定义v关系的完整性约束关系的完整性约束n实体完整性:实体完整性:就是一个关系模型中的所有元组都是就是一个关系模型中的所有元组都是唯一的,没有两个完全相同的元组,也就是一个二唯一的,没有两个完全相同的元组,也就是一个二维表中没有两个完全相同行,也称为维表中没有两个完全相同行,也称为行行完整性。通完整性。通过过关键字关键字不能重复来约束。不能重复来约束。n域完整性:域完整性:就是对表中列数据的规

13、范,也称就是对表中列数据的规范,也称列列完整完整性,用于限制列的数据类型、格式以及取值范围。性,用于限制列的数据类型、格式以及取值范围。n参照完整性:参照完整性:当一个数据表中有当一个数据表中有外部关键字外部关键字( (即该即该列是另外一个表的关键字列是另外一个表的关键字) )时,外部关键字列的所时,外部关键字列的所有值,都必须出现在其所对应的表中。有值,都必须出现在其所对应的表中。n用户定义完整性:用户定义完整性:用户根据实际应用定义的约束,用户根据实际应用定义的约束,反映应用领域需要遵循的约束条件,体现了具体领反映应用领域需要遵循的约束条件,体现了具体领域中的语义约束。域中的语义约束。数据

14、库原理及应用(Access版) 3.3 3.3 关系代数关系代数v传统的集合运算传统的集合运算1.1.并:并:设设A A、B B同为同为n n元关系,则元关系,则A A、B B的并也的并也是一个是一个n n元关系,记作元关系,记作ABAB。包含同时属。包含同时属于于A A、B B的元组在的元组在A BA B中只出现一次。中只出现一次。2.2.交:交:设设A A、B B同为同为n n元关系,则元关系,则A A、B B的交也的交也是一个是一个n n元关系,记作元关系,记作ABAB。ABAB包含了包含了所有同属于所有同属于A A、B B的元组。的元组。3.3.差:差:设设A A、B B同为同为n n

15、元关系,则元关系,则A A、B B的差也的差也是一个是一个n n元关系,记作元关系,记作A-BA-B。A-BA-B包含了所包含了所有属于有属于A A但不属于但不属于B B的元组。的元组。ABABAB数据库原理及应用(Access版) 3.3 3.3 关系代数关系代数v专门的关系运算专门的关系运算1.1.选择(选择(SelectionSelection):):n数学描述:设数学描述:设 R=(a1R=(a1,a2a2,an)an)是一个是一个n n元关系,元关系,S S是关于是关于(a1(a1,a2a2,an)an)的一个条件,的一个条件,R R中所有满足中所有满足S S条件的元组组成的子关系条

16、件的元组组成的子关系S(R)S(R),称为,称为R R的一个选择。的一个选择。n数据库表达:从关系中筛选出满足一定条件的记录数据库表达:从关系中筛选出满足一定条件的记录(横向运算、行运算横向运算、行运算),不影响关系的结构。),不影响关系的结构。学号学号姓名姓名性别性别S001S001张雨张雨男男S002S002李非李非女女S003S003王小华王小华男男条件:条件:女同学女同学学号学号姓名姓名性别性别S002S002李非李非女女选择结果选择结果v课本课本P55例例3.7数据库原理及应用(Access版) 3.3 3.3 关系代数关系代数v专门的关系运算专门的关系运算2.2.投影(投影(Pro

17、jectionProjection):):n数学描述:设数学描述:设 R=R(AR=R(A1 1,A A2 2,A An n) )是一个是一个n n元关系,元关系,ii1 1,i i2 2,i im m 是是11,2 2,nn的一个子集,并的一个子集,并且且 i i1 1ii2 2iim m,称,称(R)(R)是是R R在上的一个投影。在上的一个投影。n数据库表达:从关系中选取若干字段组成一个新的数据库表达:从关系中选取若干字段组成一个新的关系(关系(纵向运算、列运算纵向运算、列运算),改变关系中的结构。),改变关系中的结构。学号学号姓名姓名性别性别S001S001张雨张雨男男S002S002

18、李非李非女女S003S003王小华王小华男男姓名姓名张雨张雨李非李非王小华王小华查看学生查看学生姓名姓名投影结果投影结果v课本课本P53例例3.6数据库原理及应用(Access版) 3.3 3.3 关系代数关系代数v专门的关系运算专门的关系运算3.3.连接(连接(JoinJoin):):n数学描述:设数学描述:设A A是一个包含是一个包含m m个元组的个元组的k1k1元关系,元关系,B B是是一个包含一个包含n n个元组的个元组的k2k2元关系,则元关系,则A A、B B的连接是一个的连接是一个包含包含m mn n个元组的个元组的k1+k2k1+k2元关系,记作元关系,记作A AB B。n数据

19、库表达:将两个关系通过共同的字段连接成一数据库表达:将两个关系通过共同的字段连接成一个新的关系,实现两个关系的横向合并。个新的关系,实现两个关系的横向合并。学号学号课程号课程号S001S001C01C01S001S001C02C02课程号课程号课程名课程名C01C01英语英语C02C02高等数学高等数学C03C03数据库数据库v课本课本P57例例3.8数据库原理及应用(Access版) 3.4 3.4 关系数据库规范化理论关系数据库规范化理论v问题的提出:问题的提出:n数据冗余数据冗余 n更新异常更新异常n插入异常插入异常n删除异常删除异常有没有一种方法来帮助识别有没有一种方法来帮助识别一个关

20、系模式是否存在异常,一个关系模式是否存在异常,并且能指导对一个异常的关并且能指导对一个异常的关系模式进行改造,消除其异系模式进行改造,消除其异常呢?常呢?表表 3-1 一个不好的关系模式一个不好的关系模式供应商代码供应商代码供应商品名称供应商品名称联系人联系人商品名称商品名称订货数量订货数量单价单价S001华科电子有限公司华科电子有限公司施宾彬施宾彬笔记本计算机笔记本计算机109800.00S001华科电子有限公司华科电子有限公司施宾彬施宾彬激光打印机激光打印机52800.00S002湘江计算机外设公司湘江计算机外设公司方胜力方胜力笔记本计算机笔记本计算机510200.00S003韦力电子实业

21、公司韦力电子实业公司周昌周昌喷墨打印机喷墨打印机5480.00S003韦力电子实业公司韦力电子实业公司周昌周昌交换机交换机28500.00数据库原理及应用(Access版) 3.4 3.4 关系数据库规范化理论关系数据库规范化理论v范式范式 对关系模式的规范化要求分为从低到高不同的层次,分对关系模式的规范化要求分为从低到高不同的层次,分别称为第别称为第1 1范式、第范式、第2 2范式、第范式、第3 3范式、范式、B-CB-C范式、第范式、第4 4范范式和第式和第5 5范式。范式。 第第1 1范式(范式(1NF1NF):数据的:数据的原子性原子性,属性是不可分,属性是不可分的。这是关系型数据库的

22、最基本要求,不满足第的。这是关系型数据库的最基本要求,不满足第一范式的数据库不是关系数据库。一范式的数据库不是关系数据库。姓名姓名电电 话话手机手机住宅住宅张梅张梅13901200120139012001208548752185487521吴楠吴楠13024567895130245678958465326584653265姓名姓名手机手机住宅住宅张梅张梅13901200120139012001208548752185487521吴楠吴楠13024567895130245678958465326584653265不符合不符合1NF的实例的实例符合符合1NF数据库原理及应用(Access版) 3.

23、4 3.4 关系数据库规范化理论关系数据库规范化理论v第二范式(第二范式(2NF2NF):符合:符合1NF1NF,并且,非主属性完全,并且,非主属性完全依赖于主关键字段,即消除部分依赖。依赖于主关键字段,即消除部分依赖。* *学号学号* *课程号课程号课程名课程名姓名姓名成绩成绩201101201101c110c110高等数学高等数学王小平王小平8585201101201101c120c120英语英语王小平王小平9292201102201102c110c110高等数学高等数学杨杨 光光9090不符合不符合2NF的实例的实例* *学号学号* *课程号课程号成绩成绩201101201101c110c1108585201101201101c120c1209292201102201102c110c1109090* *课程号课程号课程名课程名c110c110高等数学高等数学c120c120英语英语* *学号学号姓名姓名201101201101王小平王小平201102201102杨杨 光光符合符合2NF按照按照2NF规定进行分解

温馨提示

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

评论

0/150

提交评论