关系数据库范式设计常玉慧

上传人:cl****1 文档编号:591371781 上传时间:2024-09-17 格式:PPT 页数:21 大小:2.24MB
返回 下载 相关 举报
关系数据库范式设计常玉慧_第1页
第1页 / 共21页
关系数据库范式设计常玉慧_第2页
第2页 / 共21页
关系数据库范式设计常玉慧_第3页
第3页 / 共21页
关系数据库范式设计常玉慧_第4页
第4页 / 共21页
关系数据库范式设计常玉慧_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《关系数据库范式设计常玉慧》由会员分享,可在线阅读,更多相关《关系数据库范式设计常玉慧(21页珍藏版)》请在金锄头文库上搜索。

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

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

3、人5517935.00小计935.00A3钟楼区临江饭店1002李思岐技术员60181080.001004葛宇洪技术员6014840.00小计1920.00公司的项目工时表非规范非规范关系数据库不支持关系数据库不支持这种数据结构!这种数据结构!冗余数据冗余数据问题一:非规范的关系表9/17/202481NF的定义 如果一个关系模式R的所有属性都是不可分的基本数据项,不可分的基本数据项,则R1NF。9/17/20249公司的项目工时表应用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葛宇洪技术员60149/17/202410问题二:数据冗余大、更新复杂 若要增加一个新的职工时,首先必须给这名职工分配一个工程。或者为了添加一名新职工的数据,先给这名职工分配一个虚拟的工程。(因为主关键字不能为空)工程号工程号工程名称工程名称职工号职工号姓名姓名职务职务小时工资率小时工资率工时工时A1花园大厦1001齐光明工程师6513A1花园大厦1002李思岐技术员6016A3临江饭店1002李思岐技术员6018A3临江饭店1004葛宇洪技术员60149/17/202411 A4 虚拟的工程号虚拟的工程号1005王启明王启明技术员技术员60异常:工程号不存在

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

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

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

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

11、8工程号工程名称职工号姓名职务职务小时工资率工程号职工号工时工程表职工表职务表项目工时表任务任务完成,数据库包含如下四张表:完成,数据库包含如下四张表:工程表(工程号,工程名称)工程表(工程号,工程名称)3NF职工表(职工表(职工号职工号,姓名表,职务),姓名表,职务)3NF职务表(职务表(职务职务,小时工资率),小时工资率)3NF项目工时表(工程号,职工号,工时)项目工时表(工程号,职工号,工时)3NF3NF应用3NF规范化 规范化的本质是提高数据独立性,解决插入异常、删除异常、修改复杂、数据冗余等问题的方法。1NF的目标:原子性的目标:原子性2NF的目标:非主属性列和主码完全的目标:非主属

12、性列和主码完全相关相关3NF的目标:非主属性列和主码的目标:非主属性列和主码直接相关直接相关9/17/202419总 结 下表给出的关系R为第几范式?是否存在操作异常?若存在,则将其分解为高一级范式。分解完成的高级范式中是否可以避免分解前关系中存在的操作异常? 作作 业业工程号工程号材料号材料号数量数量开工日期开工日期完工日期完工日期价格价格P1L142012/022013/05250P1L262012/022013/05300P1L3152012/022013/05180P2L162012/102013/10250P2L4182012/102013/10350R 下课了下课了219/17/2024休息一会儿休息一会儿

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号