MySQL数据库应用与管理项目化教程课件:数据模型_第1页
MySQL数据库应用与管理项目化教程课件:数据模型_第2页
MySQL数据库应用与管理项目化教程课件:数据模型_第3页
MySQL数据库应用与管理项目化教程课件:数据模型_第4页
MySQL数据库应用与管理项目化教程课件:数据模型_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

应用数据库设计教学目标能力目标◎能针对数据库设计项目,做好调研准备和有效采集调研数据;◎能绘制业务流图、数据流图,分析数据并绘制简单局部ER图。知识目标◎熟悉需求分析的步骤和方法;◎掌握规范业务流图、数据流图、ER图的绘制。学习重点◎熟悉需求分析方法步骤、调研准备和采集调研数据方法;◎掌握规范业务流图、数据流图、ER图的绘制方法。学习难点◎需求分析和全局ER图的绘制。任务任务1需求调研任务2需求分析任务3概念模型设计任务4逻辑结构设计数据库设计流程图‑

数据库设计流程任务四

数据模型设计任务说明概念模型是独立于任何一种DBMS设计的,不能被任何一个具体的DBMS所支持。为适应具体的DBMS,需将概念模型转化为某个具体的数据库管理系统所支持的数据模型,即进行逻辑结构设计。本节将超市销售管理系统的E-R模型转换为当前流行的关系数据模型。教学目标掌握E-R图到关系模式的转换规则掌握关系数据库规范化设计关系模式的转换规则

(1)一个实体型转换为一个关系模式,实体的属性就是关系的属性,实体的码就是关系的关键字。(2)若实体间的联系是1:1联系,可在其中任一个实体的关系模式中加入另一个实体码和联系属性。(3)若实体间的联系是1:n联系,则在n端实体类型转换成的关系模式中,加入1端实体的主码和联系的属性。(3)若实体间的联系是m:n联系,则将联系也转换成关系模式,其属性为两端实体类型的主码加上联系的属性,该关系的主码则为两端实体主码的组合。(4)3个以上实体的m:n联系:则将联系也转换成关系模式,主码为各实体的码组成。(5)具有相同关键字的关系模式可以合并。例:关系模式的转换举例关系模式的转换举例(1)部门关系属性为其自身的所有属性:部门(部门编号,部门名称、业务职责、电话)(2)员工关系除了其自身属性外,根据1:n转换规则,还应加入1端联系的实本主码:部门编号。员工(员工号,部门号,姓名,性别,身份证号,出生日期,入店日期,职业,联系电话,电子邮箱,住址,邮编)(3)销售联系与会员、员工、上架商品三个实体有关系,根据转换规则,销售除自身属性外还应加入3个实体的主码。销售(销售单号,商品号,件数,时间,会员号,是否批发,销售时间,销售员号)其他实体或联系按转换规则,用同样方法转换。关系数据库规范化设计关系优化检查为了提高数据的存取效率,对设计出来的关系数据模式需要进一步进行优化调整,通常可以采用关系规范化理论对数据关系进行检查优化。关系规范化的目的避免数据冗余。避免数据的不一致性避免删除、插入的不规则。关系数据库规范化设计例:在超市销售管理中存在一个销售关系它包含的属性有销售单号、销售商品名、厂商、数量、售价、销售日期、销售员等,在这个关系中商品基本信息已经包在里面,所以不再单独设商品表,以销售单号与为主码。销售单号商品编号商品名称厂商售价数量销售日期销售员S0000102G0011快食面康师傅552009-08-12李映S0000103G0002矿泉水怡宝3.532009-08-12周强S0000108G0003矿泉水农夫山泉452009-08-16张小军S0000109G0011快食面康师傅3.5152009-09-12周强3.4关系数据库的规范化问题1:哪些内容是重复存储了?(存在数据冗余)问题2:商品编号为G0002误录为G0003,在数据表中出现什么问题?(不小心输入造成数据的不一致性)问题3:更新数据时,若将第4条记录商品名修改了,将会怎样?(造成G0011商品有多个名称,造成数据不一致、更新异常)关系数据库的规范化问题4:若插入一个商品信息,而该商品未销售,按该关系能插入该商品信息吗?(学生未选课就不能录入学生信息,这是插入异常)问题5:若删除所有商品销售记录,将会出现什么情况?(会把所有商品信息和销售信息也都删除了,这是删除异常)。出现这些现象的原因是什么?关系的属性间存在数据依赖,其中最重要的是函数依赖。函数依赖定义1:设R(U)是属性集U上的关系模式,X,Y是U的子集。若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称X函数确定Y或Y函数依赖于X,记作X->Y。例:在商品信息中,商品号唯一,则:不存在商品号相同,而商品名称不同的商品元组(即在此关系中,不会出现商品号:商品名为1:n),我们说:商品号->商品名称。函数依赖完全函数依赖设X->Y是一个函数依赖,并且对于任何X中的元素X’,X’->Y都不成立,则称X->Y是一个完全函数依赖,即Y函数依赖于整个X。例:若销售单为(销售单号,商品编号,售价,数量,销售日期,销售员)关系中,(销售单号,商品编号)为主码,因销售价因进货价的不同、促销的时间不同而有所不同,所以(销售单号,商品编号)->售价是一个完全函数依赖。函数依赖部分函数依赖设X->Y是一个函数依赖,但不是完全函数依赖,则称X->Y是一个部分函数依赖,即Y函数依赖于X的某个真子集。例:在销售单(销售单号,商品编号,商品名称,厂商,售价,数量,销售日期,销售员)中,主码为(销售单号,商品编号),因有商品编号->商品名称,所以(销售单号,商品编号)->商品名称是一个部分函数依赖。函数依赖4)传递函数依赖:设R(U)是一个关系模式,X,Y,Z是了集,如果X->Y,Y->Z成立,则称Z传递函数依赖于X。例:销售部编号->销售部名称销售部名称->销售部经理销售部编号->销售部经理关系数据库的规范化2、关系数据库的规范化规则第1范式(1NF):关系每一个属性的值域只包含原子项,即不可分割的数据项,无重复的属性.第2范式(2NF):符合1NF,且非主属性不部分依赖于主码(即非主属性完全依赖于主码)即:每个非主属性是由整个主键函数决定的,而不能由主键的部分码来决定。

关系数据库的规范化在销售单(销售单号,商品编号,商品名称,厂商,售价,数量,销售日期,销售员)关系中,主码为(销售单号,商品编号),因有商品编号->商品名称,所以(销售单号,商品编号)->商品名称是一个部分函数依赖。所以该关系不符合2NF.关系数据库的规范化第3范式(3NF):符合2NF,且每个非主属性都不传递函数依赖于主码(即:属性不依赖于非主属性)。BC范式(BCNF):R中所有非主属性对每一个码都是完全函数依赖.R中所有主属性性每一个不包含它的码也是完全函数依赖R中没有任何属性完全函数依赖于非码的任何一组属性.关系数据库的规范化3、关系模式的分解:无损分解:是对关系模式分解时,原关系模式下任一合法的关系值在分解之后应能通过自然连接运算恢复起来。定义:设p={R1,R2,…,Rk}是关系模式R<U,F>的一个分解,如果对于R的任一满足F的关系r都有:

r=∏R1(r)∏R2(r)….∏Rk(r)则这个分解P是函数依赖集F的无损分解。

关系数据库的规范化例如:将销售单(销售单号,商品编号,商品名称,厂商,售价,数量,销售日期,销售员)可无损分解以下两个关系,这两个关系通过商品编号自然连接就可恢复原来关系。商品信息(商品编号,商品名称,厂商),销售单(销售单号,商品编号,售价,数量,销售日期,销售员)关系数据库的规范化4、关系数据库的反规范化我们尽量要求规范化设计,但也不是一味追求高规范化,因为符合的范式越高,分出来的表就越细,可能会引起资源的浪费和造成多表联系的复杂度越高.若关系表数据更新频繁的,尽量要求规范化设计。关系表主要用来检索查询用,规范化要求可降低。关系数据库的规范化例:在关系销售(销售单号,商品号,件数,时间,会员号,是否批发,销售时间,销售员号)中。根据销售记录主要用来查询分析,很少有再修改,在设计时降低规范化,加入了下面

温馨提示

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

评论

0/150

提交评论