关系数据库范式设计——常玉慧_第1页
关系数据库范式设计——常玉慧_第2页
关系数据库范式设计——常玉慧_第3页
关系数据库范式设计——常玉慧_第4页
关系数据库范式设计——常玉慧_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

1、1关系数据库设计范式关系数据库设计范式? 如何评价酒店的星级酒店酒店酒店的划分与评定标准酒店的划分与评定标准一星级酒店一星级酒店二星级酒店二星级酒店三星级酒店三星级酒店四星级酒店四星级酒店五星级酒店五星级酒店评定为评定为依据依据如何评价酒店的星级酒店酒店酒店的划分与评定标准酒店的划分与评定标准一星级酒店一星级酒店二星级酒店二星级酒店三星级酒店三星级酒店四星级酒店四星级酒店五星级酒店五星级酒店评定为评定为依据依据如何评价酒店的星级范式范式1NF2NF3NFBCNF4NF5NF依据依据判定为判定为关系模式关系模式2/23/20226DataBase任务:某建筑公司的工资管理系统的数据库如何设计?某

2、建筑公司的工资管理系统的数据库如何设计?工程号、工程名称、职工号、姓名、职务 ;一项工程由多个职工参加,一个职工也可以参与多个工程;公司按照工时和小时工资率支付工资,小时工资率由职工的职务决定Table 1Table 2Table nTable 1Table 2Table n2/23/20227工程号工程号工程名称工程名称职工号职工号姓名姓名职务职务小时工小时工资率资率工时工时实发工资实发工资区域区域名称名称A1新区花园大厦1001齐光明工程师6513845.001002李思岐技术员6016960.001004葛宇宏技术员60191140.00小计2945.00A2临渭区立交桥1003鞠明亮工

3、人5517935.00小计935.00A3钟楼区临江饭店1002李思岐技术员60181080.001004葛宇洪技术员6014840.00小计1920.00公司的项目工时表非规范非规范关系数据库不支持关系数据库不支持这种数据结构!这种数据结构!冗余数据冗余数据问题一:非规范的关系表2/23/202281NF的定义 如果一个关系模式R的所有属性都是不可分的基本数据项,不可分的基本数据项,则R1NF。2/23/20229公司的项目工时表应用1NF规范化工程号工程号工程名称工程名称职工号职工号姓名姓名职务职务小时工小时工资率资率工时工时实发工资实发工资区域区域名称名称A1新区花园大厦1001齐光明工

4、程师6513845.001002李思岐技术员6016960.001004葛宇宏技术员60191140.00小计2945.00A2临渭区立交桥1003鞠明亮工人5517935.00小计935.00A3钟楼区临江饭店1002李思岐技术员60181080.001004葛宇洪技术员6014840.00小计1920.00工程号工程号工程名称工程名称职工号职工号姓名姓名职务职务小时小时工资率工资率工时工时A1花园大厦1001齐光明工程师6513A1花园大厦1002李思岐技术员6016A1花园大厦1004葛宇洪技术员6019A2立交桥1003鞠明亮工人5517A3临江饭店1002李思岐技术员6018A3临江

5、饭店1004葛宇洪技术员6014 每当一名职工分配一个工程时,都要重复输入大量的数据。这种重复的每当一名职工分配一个工程时,都要重复输入大量的数据。这种重复的输入操作,既占据存储空间,又使得数据库的更新变得复杂,操作不当很输入操作,既占据存储空间,又使得数据库的更新变得复杂,操作不当很可能导致数据的不一致性。可能导致数据的不一致性。工程号工程号工程名称工程名称职工号职工号姓名姓名职务职务小时工资率小时工资率工时工时A1花园大厦1001齐光明工程师6513A1花园大厦1002李思岐技术员6016A1花园大厦1004葛宇洪技术员6013A2立交桥1003鞠明亮工人5517A3临江饭店1002李思岐

6、技术员6018A3临江饭店1004葛宇洪技术员60142/23/202210问题二:数据冗余大、更新复杂 若要增加一个新的职工时,首先必须给这名职工分配一个工程。或者为了添加一名新职工的数据,先给这名职工分配一个虚拟的工程。(因为主关键字不能为空)工程号工程号工程名称工程名称职工号职工号姓名姓名职务职务小时工资率小时工资率工时工时A1花园大厦1001齐光明工程师6513A1花园大厦1002李思岐技术员6016A3临江饭店1002李思岐技术员6018A3临江饭店1004葛宇洪技术员60142/23/202211 A4 虚拟的工程号虚拟的工程号1005王启明王启明技术员技术员60异常:工程号不存在

7、或者该职工根本没有参与此项目!异常:工程号不存在或者该职工根本没有参与此项目!问题三:增加异常 如果1003号职工要辞职,则必须删除所有职工号1003的数据行。工程号工程号工程名称工程名称职工号职工号姓名姓名职务职务小时工资率小时工资率工时工时A1花园大厦1001齐光明工程师6513A1花园大厦1002李思岐技术员6016A1花园大厦1004葛宇洪技术员6013A2立交桥1003鞠明亮工人5517A3临江饭店1002李思岐技术员6018A3临江饭店1004葛宇洪技术员60142/23/202212丢失了项目丢失了项目A2的信息的信息异常:这样的删除操作,丢失了项目异常:这样的删除操作,丢失了项

8、目A2所有有用的数据!所有有用的数据!问题四:删除异常 2/23/202213原因:一张表描述了多件事情工程号工程名称职工号姓名职务小时工资率工时 函数依赖图函数依赖图工程信息员工信息项目工时信息注意:存在非主属性对码的部分依赖注意:存在非主属性对码的部分依赖例如:(工程号,职工号)例如:(工程号,职工号) P 工程名称工程名称问题分析 若关系模式R1NF,并且每一个非主非主 属性都完全完全函数依赖于R的码,则R2NF。 上述的项目工时表1NF,但2NF。2/23/2022142NF的定义工程号工程号职工号职工号工时工时A1100113A1100216A1100413A2100317A3100

9、218A3100414工程号工程号工程名称工程名称A1花园大厦A2立交桥A3临江饭店152/23/2022职工号职工号姓名姓名职务职务小时工资率小时工资率1001齐光明工程师651002李思岐技术员1004葛宇洪技术员1003鞠明亮工人55 思考:员工表中思考:员工表中小时工资率被重复小时工资率被重复存储,修改技术员的存储,修改技术员的小时工资率怎样操小时工资率怎样操作呢?作呢? 原因:存在非主属性原因:存在非主属性“小时工资率小时工资率”对码对码“职工号职工号”的传递依赖的传递依赖60606262工程表员工表项目工时表应用2NF规范化1NF2NF消消除除非非主主属属性性对对码码的的部部分分依

10、依赖赖 如果关系模式R中的所有非主属性非主属性对 任何候选码都不存在传递依赖不存在传递依赖,则称关系 R 3NF。 员工表 2NF 员工表 3NF2/23/2022163NF的定义职工号职工号姓名姓名职务职务小时工资率小时工资率1001齐光明工程师651002李思岐技术员601004葛宇洪技术员601003鞠明亮工人55职工号职工号姓名姓名职务职务1001齐光明工程师1002李思岐技术员1004葛宇洪技术员1003鞠明亮工人职务职务小时工资率小时工资率工程师65技术员60工人55172/23/2022职工表职务表消除了非主属性对码的传递依赖应用3NF规范化员工表2NF3NF2/23/20221

11、8工程号工程名称职工号姓名职务职务小时工资率工程号职工号工时工程表职工表职务表项目工时表任务任务完成,数据库包含如下四张表:完成,数据库包含如下四张表:工程表(工程号,工程名称)工程表(工程号,工程名称)3NF职工表(职工表(职工号职工号,姓名表,职务),姓名表,职务)3NF职务表(职务表(职务职务,小时工资率),小时工资率)3NF项目工时表(工程号,职工号,工时)项目工时表(工程号,职工号,工时)3NF3NF应用3NF规范化 规范化的本质是提高数据独立性,解决插入异常、删除异常、修改复杂、数据冗余等问题的方法。1NF的目标:原子性的目标:原子性2NF的目标:非主属性列和主码完全的目标:非主属性列和主码完全相关相关3NF的目标:非主属性列和主码的目标:非主属性列和主码直接相关直接相关2/23/202219总 结 下表给出的关系R为第几范式?是否存在操作异常?若存在,则将其分解为高一级范式。分解完成的高级范式中是否可以避免分解前关系中存在的操作异常? 作作

温馨提示

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

评论

0/150

提交评论