收藏 分销(赏)

ER图向关系模型的转换.pptx

上传人:a199****6536 文档编号:4667086 上传时间:2024-10-09 格式:PPTX 页数:34 大小:218.62KB 下载积分:12 金币
下载 相关 举报
ER图向关系模型的转换.pptx_第1页
第1页 / 共34页
ER图向关系模型的转换.pptx_第2页
第2页 / 共34页


点击查看更多>>
资源描述
1第五节第五节数据库设计数据库设计 数据库设计的基本步骤:数据库设计的基本步骤:1.1.需求和约束分析需求和约束分析2 2概念模式设计概念模式设计3 3逻辑模式设计逻辑模式设计4 4物理数据库设计物理数据库设计5 5实施阶段实施阶段 运行和数据库维护运行和数据库维护 其中,其中,5 5和和 是在系统实现阶段所做的工作是在系统实现阶段所做的工作 2(一)需求和约束分析(一)需求和约束分析 进行数据库设计首先必须准确了解进行数据库设计首先必须准确了解与分析用户需求(包括数据与处理)。与分析用户需求(包括数据与处理)。包括:包括:调查用户要求调查用户要求 数据分析数据分析 确定环境约束条件确定环境约束条件 3(二)概念模式设计(二)概念模式设计 通过对用户需求进行综合、归纳与抽象,形成一个通过对用户需求进行综合、归纳与抽象,形成一个独立于具体独立于具体DBMSDBMS的概念模型。的概念模型。概念模型是一种面向问题的模型概念模型是一种面向问题的模型,能将用户的数据能将用户的数据明确地表达出来明确地表达出来,指出了从用户角度看到的数据库指出了从用户角度看到的数据库.它它是用户与设计人员之间的桥梁是用户与设计人员之间的桥梁,既是明确表达用户要求既是明确表达用户要求的一个模型的一个模型,又是设计数据结构的基础又是设计数据结构的基础.概念概念模式模式设计是整个数据库设计的关键。设计是整个数据库设计的关键。工具工具:实体实体联系模型联系模型(E-R模型)模型)41 1E-RE-R模型模型 (重点)重点)E-RE-R模型的三要素模型的三要素:实体、联系和属性。:实体、联系和属性。实体实体:客观存在并可相互区分的事物客观存在并可相互区分的事物.可以指物也可以指可以指物也可以指人人,可以是实际的东西可以是实际的东西,也可以指概念性的东西也可以指概念性的东西.如:学生张三、工人李四、计算机系、数据库概论等如:学生张三、工人李四、计算机系、数据库概论等 属性属性:实体所具有的某一特性。一个实体可以由若干个属实体所具有的某一特性。一个实体可以由若干个属性来刻画。性来刻画。如:学生的学号、姓名、性别、年级、成绩等。如:学生的学号、姓名、性别、年级、成绩等。属性的取值范围为域。如性别的域为(男、女),月份的域为属性的取值范围为域。如性别的域为(男、女),月份的域为的整数。的整数。联系联系:实体之间的相互关联实体之间的相互关联 如:学生与课程之间有选课联系如:学生与课程之间有选课联系 联系有联系有一对一、一对多、多对多一对一、一对多、多对多三种不同类型。联系也可以有属性,三种不同类型。联系也可以有属性,如学生与课程之间有选课联系,每个选课联系都有一个成绩作为其属如学生与课程之间有选课联系,每个选课联系都有一个成绩作为其属性。性。51 1E-RE-R模型(续)模型(续)E-R图图l矩形框矩形框-实体实体l菱形框菱形框-联系联系l椭圆形框椭圆形框-实体和联系的属性实体和联系的属性l直线直线-相互联系的实体之间以直线连接,相互联系的实体之间以直线连接,并并 标注联系类型标注联系类型1 1E-RE-R模型(模型(实体间的联系实体间的联系)系系主任主任负责负责系系1 11 1班级班级包含包含学生学生1 1N N产品产品组成组成零件零件M MN N一对一联系一对一联系一对多联系一对多联系多对多联系多对多联系1 1E-RE-R模型模型(例例:学生选修课程学生选修课程)学生学生课程课程选修选修学号学号姓名姓名系别系别课程名课程名先修课先修课主讲老师主讲老师成绩成绩用矩形表示实体集,用矩形表示实体集,在框内写上实体名在框内写上实体名用椭圆表示用椭圆表示实体的属性实体的属性用无向边用无向边把实体与把实体与其属性连其属性连接起来接起来用菱形表示实用菱形表示实体间的联系体间的联系将参与联系的实将参与联系的实体用线段连接体用线段连接nm标注联标注联系类型系类型82.E-R2.E-R模型设计的主要步骤模型设计的主要步骤 l划分和确定实体;划分和确定实体;l划分和确定联系;划分和确定联系;l确定属性;确定属性;l画出画出E-RE-R模型模型.9实例:实例:构造一个基本的教学构造一个基本的教学E-RE-R模型模型 标识实体:标识实体:对一个基本的教学系统,最基本的对一个基本的教学系统,最基本的实体必须包含有教师,学生,及所学习的课程。实体必须包含有教师,学生,及所学习的课程。划分和确定关系:划分和确定关系:教师和课程之间,存在教师和课程之间,存在“讲授讲授”这个关系,这个关系,是一个是一个M M:N N的关系;的关系;v 学生和课程之间,存在学生和课程之间,存在“学习学习”这个关系,这个关系,是一个是一个L L:N N的关系;的关系;10实例:实例:构造一个基本的教学构造一个基本的教学E-RE-R模型模型 确定属性确定属性l实体的属性:实体的属性:l教师(教师(教师编号教师编号、教师姓名、职称);、教师姓名、职称);l学生(学生(学号学号、姓名、性别);、姓名、性别);l课程(课程(课程编号课程编号、课程名、学时、学分、教材名称);、课程名、学时、学分、教材名称);l联系的属性:联系的属性:l讲授(效果);讲授(效果);l学习(成绩);学习(成绩);11实例:实例:构造一个基本的教学构造一个基本的教学E-RE-R模型模型教师教师教师姓名教师姓名教师编号教师编号职称职称学生学生学号学号姓名姓名性别性别课程课程课程编号课程编号课程名课程名学时学时教材名称教材名称学分学分讲授讲授效果效果学习学习成绩成绩MNNL画出画出E-RE-R模型模型 教师教师教师姓名教师姓名教师编号教师编号职称职称学生学生学号学号姓名姓名性别性别课程课程课程编号课程编号课程名课程名学时学时教材名称教材名称学分学分讲授讲授效果效果学习学习成绩成绩MNNL教师教师教师姓名教师姓名教师编号教师编号职称职称学生学生学号学号姓名姓名性别性别课程课程课程编号课程编号课程名课程名学时学时教材名称教材名称学分学分讲授讲授效果效果学习学习成绩成绩MNNL12课堂练习课堂练习1 1某顾客对某些商品要进行订货。有关顾客、商品、订货的数据属性如下:顾客:顾客代码,顾客名,地址,联系电话,负责人;商品:商品代码,商品名,单价,生产日期;订货:订货代码,订货日期,订货量,订货额。请画出顾客对某些商品要进行订货的ER图.13课堂练习课堂练习1 114(三三)逻辑模式设计逻辑模式设计 逻辑模式设计是把概念模型(即逻辑模式设计是把概念模型(即E-RE-R模型)转换为与模型)转换为与选用的数据库管理系统所支持的数据模型相符的逻辑数选用的数据库管理系统所支持的数据模型相符的逻辑数据模型。据模型。步骤:步骤:1 1将模拟现实世界的将模拟现实世界的E-RE-R模型转换成大多数用户所采用模型转换成大多数用户所采用的关系数据模型的关系数据模型 。2 2关系关系模型模型的规范化的规范化151 1.将将E-RE-R模型转为关系数据模型模型转为关系数据模型(重点)重点)转换原则:转换原则:一个实体用一个二维表来表示,一个实体用一个二维表来表示,实体的所有属性就是表的属实体的所有属性就是表的属性,实体的主码就是表的主码。性,实体的主码就是表的主码。一个一个联联系用一个二维表来表示,系用一个二维表来表示,与该联系相连的各实体的主与该联系相连的各实体的主码以及联系本身的属性均成为此表的属性。而表的主码为联码以及联系本身的属性均成为此表的属性。而表的主码为联系相连的各实体的主码的组合。系相连的各实体的主码的组合。主码主码/关键字关键字(key)/(key)/关键属性关键属性:能唯一标识实体的属性或属性组能唯一标识实体的属性或属性组称作候选码称作候选码.从所有候选码中选定一个用来区别同一实体集中从所有候选码中选定一个用来区别同一实体集中的不同实体的称作主码的不同实体的称作主码.一个实体集中一个实体集中,任意两个实体在主码任意两个实体在主码上的取值不能相同上的取值不能相同.如学号是学生实体的主码如学号是学生实体的主码.1实例:实例:教学教学E-RE-R模型模型转为关系数据模型转为关系数据模型数据项数据项 教师编号教师编号 教师姓名教师姓名 职称职称 类型类型CCC长度长度 1020实体:教师实体:教师 KEY=教师编号教师编号 数据项数据项学号学号 姓名姓名 性别性别 类型类型CCC长度长度 8102实体:学生实体:学生 KEY=学号学号 1实例:实例:教学教学E-RE-R模型模型转为关系数据模型转为关系数据模型实体:课程实体:课程 KEY=课程编号课程编号 数据项数据项 课程编号课程编号 课程名课程名 学时学时 学分学分 教材名称教材名称 类型类型 C C NNC 长度长度 20 4 43018实例:实例:教学教学E-RE-R模型模型转为关系数据模型转为关系数据模型数据项数据项 教师编号教师编号 课程编号课程编号 效果效果 类型类型CCC长度长度 8联联系:教学系:教学 KEY=(教师编号,教师编号,课程编号课程编号)数据项数据项学号学号 课程编号课程编号 成绩成绩 类型类型CCN长度长度 88联联系:学习系:学习 KEY=(学号,学号,课程编号课程编号)19课堂练习课堂练习2 2l某顾客对某些商品要进行订货。有关顾客、商品、订货的数据属性如下:顾客:顾客代码,顾客名,地址,联系电话,负责人;商品:商品代码,商品名,单价,生产日期;订货:订货代码,订货日期,订货量,订货额。请画出顾客对某些商品要进行订货的ER图,并将该ER图转换为关系数据模型。2021商 品nm订货顾 客地址商品代码商品名顾客代码负责人生产日期单价顾客名联系电话订货日期订货代码订货量订货额22课堂练习课堂练习2 2l答:共有三个二维表l顾客:顾客代码,顾客名,地址,联系电话,负责人;l商品:商品代码,商品名,单价,生产日期;l订货:订货代码,订货日期,订货量,订货额,顾客代码,商品代码。232 2关系模型的规范化关系模型的规范化 规范化是关系数据库设计的重要理论。借助规范化方法规范化是关系数据库设计的重要理论。借助规范化方法来设计数据存储的结构,并力求简化数据存储的数据结构,来设计数据存储的结构,并力求简化数据存储的数据结构,提高数据的可修改性、完整性和一致性。提高数据的可修改性、完整性和一致性。在规范化理论中有在规范化理论中有5种规范化模式(种规范化模式(normalfrom,简称范式,简称范式NF)。范式表示的是关系模式的规范化程度,即满足某种)。范式表示的是关系模式的规范化程度,即满足某种约束条件的关系模式。根据满足的约束条件的不同来确定范约束条件的关系模式。根据满足的约束条件的不同来确定范式。有第一范式(式。有第一范式(1NF),第二范式(),第二范式(2NF)等。下面主要)等。下面主要介绍前三种范式。介绍前三种范式。242 2关系模型的规范化关系模型的规范化 l第一范式第一范式(1 1NFNF):):在一个数据结构中每一个分在一个数据结构中每一个分量都是一个不可再分的数据项量都是一个不可再分的数据项(原子值原子值)。l第二范式(第二范式(2 2NFNF):):一个规范化的数据结构的所一个规范化的数据结构的所有非关键字数据项完全函数依赖于它的整个关键有非关键字数据项完全函数依赖于它的整个关键字字。l第三范式(第三范式(3 3NFNF):):一个数据结构中任何一个非一个数据结构中任何一个非关键字数据项都不传递依赖于它的关键字。关键字数据项都不传递依赖于它的关键字。25第一范式第一范式如果在一个数据结构中每个数据项都是不如果在一个数据结构中每个数据项都是不可再分的原子值,就称该数据结构是规范的。可再分的原子值,就称该数据结构是规范的。任何满足规范化要求的数据结构都称为第一规任何满足规范化要求的数据结构都称为第一规范形式,记为范形式,记为1NF。2第一范式例:把第一范式例:把不规范转为规范不规范转为规范职工号职工号姓名姓名性别性别出生出生日期日期简历简历工作工作日期日期 工作单位工作单位职务职务不规范不规范不规范不规范职工简明表职工简明表转换转换转换转换职工号职工号姓名姓名性别性别出生日期出生日期工作日期工作日期工作单位工作单位职务职务关键字:职工号关键字:职工号职工基本情况职工基本情况2第二范式第二范式如果一个规范化的数据结构的所有非关键字如果一个规范化的数据结构的所有非关键字数据项完全函数依赖于它的整个关键字,则称该数据项完全函数依赖于它的整个关键字,则称该数据结构是第二范式的,记为数据结构是第二范式的,记为2NF。转化为第二范式的方法是:对于关键字由若转化为第二范式的方法是:对于关键字由若干个数据项组成的数据结构,必须确保所有的非干个数据项组成的数据结构,必须确保所有的非关键字数据元素依赖于整个关键字。即去掉关键字数据元素依赖于整个关键字。即去掉部分部分依赖关系依赖关系,把它分解成若干个都是,把它分解成若干个都是2NF的数据结的数据结构。构。28第二范式(续)第二范式(续)部分依赖:部分依赖:假设假设ABCABC分别是同一个数据结构分别是同一个数据结构R R中的中的三个元素或分别是三个元素或分别是R R中若干个数据元素的集合。中若干个数据元素的集合。C C依赖于依赖于ABAB的子集,则称的子集,则称C C部分依赖于部分依赖于ABAB。否则,称否则,称为为C C完全依赖于完全依赖于ABAB。AB-C AB-C,A-C A-C 则则 AB-CAB-C 例如例如:(学号,课程号)(学号,课程号)-成绩成绩 (完全依赖)(完全依赖)(学号学号,课程号),课程号)-姓名(部分依赖)姓名(部分依赖)29第二范式例:第二范式例:第一范式转为第二范式材料编号材料编号材料名称材料名称规格规格供应商名称供应商名称供应商地址供应商地址价格价格库存量库存量库存占用资金库存占用资金材料材料供应商供应商库存的关系如下:库存的关系如下:材料名称、规格、供应商地址不完全依赖于关键字,不是材料名称、规格、供应商地址不完全依赖于关键字,不是2NF30第二范式例:第二范式例:第一范式转为第二范式分解成三个分解成三个2NF的数据结构的数据结构材料编号材料编号*供应商名称供应商名称*价格价格库存量库存量库存占用资金库存占用资金材料编号材料编号*材料名称材料名称规格规格供应商名称供应商名称*供应商地址供应商地址1.材料库存材料库存2.材料规格材料规格3.供应商供应商31第三范式第三范式 如果一个数据结构中任何一个非关键字数据项如果一个数据结构中任何一个非关键字数据项都都不传递依赖不传递依赖于它的关键字,则称该数据结构是于它的关键字,则称该数据结构是第三范式的,记为第三范式的,记为3 3NFNF。传递依赖:传递依赖:假设假设ABCABC分别是同一个数据结构分别是同一个数据结构R R中的中的三个元素或分别是三个元素或分别是R R中若干个数据元素的集合中若干个数据元素的集合,如如果果C C依赖依赖B B,而而B B依赖于依赖于A A,那么那么C C自然依赖于自然依赖于A A,即即称称C C传递依赖传递依赖A A。A-B A-B,B-C B-C 则则 A-(A-(传递传递)C C在第二范式中去掉传递依赖关系,就是在第二范式中去掉传递依赖关系,就是3 3NFNF。32第三范式例:第三范式例:第二范式转为第三范式第二范式转为第三范式上例中因价格与库存量、库存占用资金都是非上例中因价格与库存量、库存占用资金都是非关键字,但库存量依赖于价格和库存占用资金,所关键字,但库存量依赖于价格和库存占用资金,所以非以非3NF.转为第三范式:去掉多余的转为第三范式:去掉多余的“库存占用资金库存占用资金”,而,而在程序中加以解决即可。在程序中加以解决即可。材料编号材料编号*供应商名称供应商名称*价格价格库存量库存量材料编号材料编号*材料名称材料名称规格规格供应商名称供应商名称*供应商地址供应商地址1.材料库存材料库存2.材料规格材料规格3.供应商供应商33第三范式第三范式第三范式(第三范式(3NF)消除了插入、删除异常及数据冗)消除了插入、删除异常及数据冗余、修改复杂等问题,已经是比较规范的关系了。余、修改复杂等问题,已经是比较规范的关系了。34数据结构规范化设计的步骤数据结构规范化设计的步骤非规范化的数据(有非原子的数据项)非规范化的数据(有非原子的数据项)1NF(每一个分量均为不可分的数据项)每一个分量均为不可分的数据项)2NF(所有的非关键字均完全依赖于整个关键字)所有的非关键字均完全依赖于整个关键字)3NF(所有的非关键字均完全依赖于整所有的非关键字均完全依赖于整个关键字,且只依赖于整个关键字)个关键字,且只依赖于整个关键字)把所有非规范化的数据结构分解成若干个二维表形式的数据结把所有非规范化的数据结构分解成若干个二维表形式的数据结构,并指定一个或若干个关键字构,并指定一个或若干个关键字若关键字由不止一个元素组成,必须保证所有的非关键字数据元素若关键字由不止一个元素组成,必须保证所有的非关键字数据元素依赖于整个关键字,否则去掉部分依赖关系。依赖于整个关键字,否则去掉部分依赖关系。检查所有非关键字数据元素是否彼此独立,如果不是,去掉传递依检查所有非关键字数据元素是否彼此独立,如果不是,去掉传递依赖关系,通过去除冗余的数据元素,构成都是赖关系,通过去除冗余的数据元素,构成都是3NF的数据结构。的数据结构。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服