3-2杨梅-计算机等级考试-三级数据库技术-精-第3章 数据库结构设计_第1页
3-2杨梅-计算机等级考试-三级数据库技术-精-第3章 数据库结构设计_第2页
3-2杨梅-计算机等级考试-三级数据库技术-精-第3章 数据库结构设计_第3页
3-2杨梅-计算机等级考试-三级数据库技术-精-第3章 数据库结构设计_第4页
3-2杨梅-计算机等级考试-三级数据库技术-精-第3章 数据库结构设计_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

计算机等级考试三级数据库技术精讲班主讲老师:杨梅,1、逻辑设计的任务:将概念模型(如ER图)转化为DBMS支持的数据模型(如关系模型),并对其进行优化。,第二节数据库逻辑设计,2、逻辑设计的依据和阶段目标:,第二节数据库逻辑设计,3、补充相关概念关系模型数据依赖候选码、主码、外码数据规范化范式,第二节数据库逻辑设计,关系模型有三种主要的数据模型:层次模型、网状模型、关系模型。其中关系模型简单灵活,并有着坚实的理论基础,已成为当前最流行的数据模型。关系模型就是用二维表格结构来表示实体及实体之间联系的模型。关系的描述称为关系模式(RelationSchema)。关系模式由五部分组成,即它是一个五元组:R(U,D,DOM,F),第二节数据库逻辑设计,R:关系名U:组成该关系的属性名集合D:属性组U中属性所来自的域DOM:属性到域的映射F:属性组U上的一组数据依赖由于D、DOM对模式设计的关系不大,这里把关系模式简化为一个三元组:R,当且仅当U上的一个关系R满足F时,R称为关系模式R的一个关系。,第二节数据库逻辑设计,例:上述E-R图中的学生实体可以转换为如下关系模式:学生(学号,姓名,出生日期,所在系,年级,平均成绩),第二节数据库逻辑设计,1、关系数据库设计的核心:关系模式的设计。2、关系模式的设计目标:按照一定的原则从数量众多而又相互关联的数据中,构造出一组既能较好地反映现实世界,而又有良好的操作性能的关系模式。,新奥尔良法,数据库设计步骤:需求分析概念结构设计逻辑结构设计物理结构设计E-R图关系模式设计,7.1关系模式的评价,第二节数据库逻辑设计,数据依赖定义:设R(U)是一个属性集U上的关系模式,X和Y是U的子集。若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称“X函数确定Y”或“Y函数依赖于X”,记作XY。,第二节数据库逻辑设计,数据依赖关系内部属性与属性之间的一种约束关系是现实世界属性间相互联系的抽象数据的内在性质语义的体现完整性约束的表现形式限定属性的取值范围,如年龄60定义属性间值的相互关联(主要体现于值的相等与否),这就是数据依赖,第二节数据库逻辑设计,第二节数据库逻辑设计,数据依赖的类型函数依赖(FunctionalDependency,FD)普遍存在于生活中,这种依赖关系类似于数学中的函数y=f(x),自变量x确定之后,相应的函数值y也就唯一地确定了。如关系:公民(身份证号,姓名,地址,工作单位)身份证号一确定,则其地址就唯一确定,因此地址函数依赖身份证号。而姓名一确定,不一定能确定地址。,第二节数据库逻辑设计,多值依赖(MultivaluedDependency,MD)教师号可能多值依赖课程号,因为给定一个(课程号,参考书号)的组合,可能有对应多个教师号。这是因为多个老师可以使用相同或不同的参考书上同一门课。简单点讲,函数就是唯一确定的关系;多值依赖却不能唯一确定。,第二节数据库逻辑设计,函数依赖的几种特例1、平凡函数依赖与非平凡函数依赖如果XY,且YX,则XY称为非平凡函数依赖。若YX,则称XY为平凡函数依赖。由于YX时,一定有XY,平凡函数依赖必然成立,没有意义,所以一般所说的函数依赖总是指非平凡函数依赖。,第二节数据库逻辑设计,例:Sno代表学生的学号,Cno代表课程号,Grade代表成绩。在关系SC(Sno,Cno,Grade)中,非平凡函数依赖:(Sno,Cno)Grade平凡函数依赖:(Sno,Cno)Sno(Sno,Cno)Cno,例:选课(学号,课程号,课程名,成绩)(学号,课程号)成绩(学号,课程号)课程名因为课程号课程名推论:如果XY,且X是单个属性,则XY,第二节数据库逻辑设计,2、完全函数依赖与部分函数依赖如果XY,且对于任何XX,都有XY,则称y完全依赖于x,记作XY。如果XY,但Y不完全依赖于X,则称Y部分函数依赖于X,记作XY。,第二节数据库逻辑设计,3、传递函数依赖如果XY,YZ,且YX,YX,则称Z传递函数依赖于X。记作X传递Z。例:学生(学号,姓名,系名,系主任)显然系主任传递函数依赖于学号,因为学号系名,系名系主任,思考题:已知关系模式R(学生学号,课程名,学生专业号,专业名,成绩),说出下面是什么关系?,(学生学号,课程名,学生专业号)成绩学生学号专业名(学生学号,专业名)成绩(学生学号,课程名)成绩(课程名,专业名,成绩)(课程名,成绩),(函数依赖,部分函数依赖)(函数依赖,传递函数依赖)(不是函数依赖)(完全函数依赖)(平凡函数依赖),第二节数据库逻辑设计,候选码、主码、外码我们已经知道,如果某属性组的值能唯一确定整个元组的值,则称该属性组为候选码或侯选关键字。例如:(学号,姓名,性别,年龄)中,学号是关键字,(学号,姓名)不是关键字,性别不是关键字。候选码如果有多个,可以选其中的一个作为主码(PrimaryKey)。,第二节数据库逻辑设计,属性或属性组X不是关系模式R的码(既不是主码也不是候选码),但X是另一个关系模式的码,则称X是R的外部码,也称外码(Foreignkey)。例如:在SC(Sno,Cno,Grade)中,Sno不是码,但Sno是关系模式S(Sno,Sdept,Sage)的码,则Sno是关系模式SC的外部码。,第二节数据库逻辑设计,数据规范化关系数据库的设计主要是关系模式设计。关系模式设计的好坏直接影响到数据库设计的成败。将关系模式规范化,是设计较好的关系模式的惟一途径。关系模式的规范化主要是由关系范式来完成的。关系模式的规范化:把一个低一级的关系模式分解为高一级关系模式的过程。关系数据库的规范化理论是数据库逻辑设计的工具。目的:尽量消除插入、删除异常,修改复杂,数据冗余的问题。,第二节数据库逻辑设计,范式范式:关系模式满足的约束条件称为范式。根据满足规范化的程度不同,范式由低到高分为1NF,2NF,3NF,BCNF,4NF,5NF。1NF:如果关系模式R,其所有属性都是不可再分的基本数据项,则称R属于第一范式,R1NF。,第二节数据库逻辑设计,例:R(姓名,身份,年龄)姓名身份年龄-张三男学生17李四女教师27林林女作家29,R不属于1NF,1NF要求数据库表中的字段都是单一属性的,不可再分。,第二节数据库逻辑设计,2NF:如关系模式R1NF,且每个非主属性完全函数依赖于主码,则称R属于第二范式,R2NF。例:判断R(学号,姓名,年龄,课程名称,成绩,学分)是否属于第

温馨提示

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

评论

0/150

提交评论