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

下载本文档

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

文档简介

计算机等级考试三级数据库技术精讲班主讲老师:杨梅,3NF:如果关系模式R为2NF,并且中的每个非主属性不传递依赖于的主码,则称关系R是属于第3范式的,R3NF。例:判断R(学号,姓名,年龄,所在学院,学院地点,学院电话)是否属于第三范式。,第二节数据库逻辑设计,主码:(学号)非主属性:姓名,年龄,所在学院,学院地点,学院电话存在非关键字段“学院地点”、“学院电话”对关键字段“学号”的传递函数依赖,R不属于3NF,第二节数据库逻辑设计,3NF要求实体的属性不能存在传递依赖。,第二节数据库逻辑设计,4NF,关系模式规范化的基本步骤:,示例:设关系模式R(学号,课程号,成绩,教师姓名,教师地址)规定:每个学生每学一门课只有一个成绩,每门课只有一个教师任教,每个教师只有一个地址,且教师没有同名同姓。要求:(1)写出R的基本函数依赖:存在如下基本函数依赖:(学号,课程号)成绩课程号教师姓名教师姓名教师地址,7.3范式,第二节数据库逻辑设计,7.3范式,(2)写出R的侯选码:R的侯选码:(学号,课程号)(3)确定R属于每几范式,并说明理由课程号教师姓名(学号,课程号)教师姓名R不属于2NF,R属于1NF,第二节数据库逻辑设计,第二节数据库逻辑设计,(4)若R不属于2NF,则将R分解为2NF,并说明理由把R分解为如下二个关系模式:R1(学号,课程号,成绩)R2(课程号,教师姓名,教师地址)R1的侯选码为:(学号,课程号),非主属性:成绩,第二节数据库逻辑设计,又(学号,课程号)成绩R1属于2NF同理R2的侯选码为:课程号,非主属性:教师姓名,教师地址又课程号教师姓名课程号传递教师地址R2属于2NF,而不属于3NF,(5)若R不属于3NF,则将R分解为3NF,并说明理由R1不存在非主属性对码的传递函数依赖,R1属于3NF把R2分解为如下二个关系模式:R3(课程号,教师姓名)R4(教师姓名,教师地址),第二节数据库逻辑设计,R3的侯选码为:课程号,非主属性:教师姓名课程号教师姓名且不存在非主属性对码的传递函数依赖R3属于3NF同理R4的侯选码为:教师姓名,非主属性:教师地址又教师姓名教师地址且不存在非主属性对码的传递函数依赖R4属于3NF,7.3范式,第二节数据库逻辑设计,4、数据库逻辑设计方法设计逻辑结构分三步:将概念结构转化为一般的关系模型将转化来的关系模型向特定DBMS支持下的数据模型转换对数据模型进行优化如果是关系型数据库管理系统,就应将概念模型转换为关系模型,即将E-R图中的实体和联系转换为关系模式。,第二节数据库逻辑设计,第二节数据库逻辑设计,数据库逻辑模型的产生概念模型按一定规则可以转换成数据模型。这种转换的原则如下:一个实体转换成一个关系模式一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。,第二节数据库逻辑设计,一个m:n联系转换为一个关系模式。三个或三个以上实体间的一个多元联系转换为一个关系模式。同一实体集的实体间的联系,也可以按1:1、1:n和m:n三种情况分别处理。,一个实体型转换为一个关系模式实体的属性就是关系的属性,实体的主码就是关系的主码。,学生(学号,姓名,年龄,性别),第二节数据库逻辑设计,一个1:1联系转换为一个关系模式若转换为一个独立的关系模式:各实体的主码以及联系本身的属性均转换为关系的属性,每个实体的主码均是该关系的候选码。若与一端的关系模式合并:则在该关系模式的属性中加入另一个关系模式的主码和联系本身的属性。,第二节数据库逻辑设计,有3种方案可供选择。,第二节数据库逻辑设计,举例:,3种方案比较方案1职工(职工号,姓名,年龄)产品(产品号,产品名,价格)负责(职工号,产品号)方案2职工(职工号,姓名,年龄,产品号)产品(产品号,产品名,价格),第二节数据库逻辑设计,方案3职工(职工号,姓名,年龄)产品(产品号,产品名,价格,职工号)方案1关系多,增加了系统的复杂性;方案2由于并非每个职工都负责产品,导致产品号属性出现NULL;方案3比较合理。,第二节数据库逻辑设计,第二节数据库逻辑设计,1:n联系转换为关系模式,有2种方案可供选择。,有2种方案对应一个独立的关系模式:与该联系相连的各实体的主码以及联系本身的属性均转换为关系的属性,而关系的主码为n端实体的主码。与n端对应的关系模式合并:联系本身的属性均换为关系的属性,再加1端实体的主码。,第二节数据库逻辑设计,2种方案比较方案1仓库(仓库号,地点,面积)产品(产品号,产品名,价格)仓储(仓库号,产品号,数量),第二节数据库逻辑设计,方案2(与n端对应的关系合并)仓库(仓库号,地点,面积)产品(产品号,产品名,价格,仓库号,数量)方案1对仓储变化大的场合比较适用;方案2适应仓储变化小的应用场合。因此方案2较优。,第二节数据库逻辑设计,m:n联系一个m:n联系转换为一个关系模式。与该联系相连的各实体的主码以及联系本身的属性均转换为关系的属性。而关系的主码为各实体主码的组合。,第二节数据库逻辑设计,第二节数据库逻辑设计,m:n关系示意图,转换的关系模型学生(学号,姓名,年龄,性别)课程(课程号,课程名,学时数)选修(学号,课程号,成绩),第二节数据库逻辑设计,三个及以上实体间联系三个或三个以上实体间的一个多元联系转换为一个关系模式。与该多元联系相连的各实体的主码以及联系本身的属性均转换为关系的属性。而关系的主码为各实体主的组合。,第二节数据库逻辑设计,第二节数据库逻辑设计,将多对多联系E-R图转换为关系模型,举例供应商(供应商号,供应商名,地址)零件(零件号,零件名,单价)产品(产品号,产品名,型号)供应(供应商号,零举例,产品号,数量),第二节数据库逻辑设计,同一实体集联系可以按:1:1(一对一)1:n(一对多)m:n(多对多)三种情况分别处理。,第二节数据库逻辑设计,将同实体集1:n联系转换为关系模型,第二节数据库逻辑设计,第二节数据库逻辑设计,方案1:转换为两个关系模式。职工(职工号,姓名,年龄)领导(领导工号,职工号)方案2:转换为一个关系模式。职工(职工号,姓名,年龄,领导工号)方案2关系少,且能充分表达原有的数据关系,故方案2较好。,零件(零件号,名称,价格)组装(组装件号,零件号,数量)组装件号为组装后的组合零件号。,第二节数据库逻辑设计,将同实体集m:n联系转换为关系模型,商场经营管理系统逻辑设计过程:第一步:将E-R图转换成关系模式。第二步:命名确认。第三步:优化关系模式。详见教程P44。,第二节数据库逻辑设计,1、物理设计概述物理数据库设计是设计数据库的存储结构和物理实现方法。目的:将数据的逻辑描述转换为实现技术规范,设计数据存储方案,以便提供足够好的性能并确保数据库数据的完整性、安全性、可靠性。,第三节数据库物理设计,2、数据库的物理结构物理设备上的存储结构与存取方法称为数据库的物理结构。数据库中的数据以文件形式存储在外设存储介质上。一个文件在物理上可看作是存放记录的一系列磁盘块组成的,成为物理文件。数据库的物理结构需要解决如下问题:文件组织、文件结构、文件存取、索引技术,第三节数据库物理设计,3、索引索引(Index)是数据库中独立的存储结构,其作用是提供一种无须扫描每个页面(存储表格数据的物理块)而快速访问数据页的方案。索引

温馨提示

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

评论

0/150

提交评论