已阅读5页,还剩43页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章关系模式的规范化 第三章关系模式的规范化 规范化的定义规范化是一种科学的方法 通过使用某些规则把复杂的表格结构分解为简单的表格结构你可以使你降低表中的冗余和消除不一致和磁盘空间利用的问题规范化导致于满足某些特定规则和表示某些规范形式的表的建立 第三章关系模式的规范化 关系规范化的目的 设计合理减少冗余提高查询效率 1NF 2NF 3NF BCNF 4NF 5NF 第三章关系模式的规范化 关系规范化分为若干个等级 每个等级称为一个范式随着范式级别的提高 关系的冗余度减低 但数据的分解就越细 查询数据时花在连接数据上的时间就增加 应用程序的编写难度增大 3 1模式规范化的必要性 3 1 1关系数据库设计理论的内容 数据依赖范式模式设计方法 3 1 2为什么要规范化 如果关系模式设计不合理 会造成以下异常情况的出现 关系数据库设计中存在的问题 示例 考虑为管理职工的工资信息而设计一个关系模式 关系数据库设计中存在的问题 问题 麻烦 麻烦 好麻烦 唉 剪不断 理还乱插入异常 如果没有职工具有8级工资 则8级工资的工资数额就难以插入 删除异常 如果仅有职工赵明具有4级工资 如果将赵明删除 则有关4级工资的工资数额信息也随之删除了 数据冗余 职工很多 工资级别有限 每一级别的工资数额反复存储多次 更新异常 如果将5级工资的工资数额调为620 则需要找到每个具有5级工资的职工 逐一修改 关系数据库设计中存在的问题 解决之道 分解 分解 再分解 哇 原来生活可以如此简单 3 1 2存储异常问题 例1 3 1 2存储异常问题 1 数据冗余2 更新异常某个系改变地址 该系的所有教师的记录全部需要修改 修改量大 数据不一致的潜在危险大 3 1 2存储异常问题 3 插入异常由于TNO DNO CNO是主键 如果某些新来的教师没有来的及认课 就无法加入这些教师的记录 只有讲课的教师才能加入进去 要解决这个问题 必须在建立一个新表 存放没有讲课的教师的信息 3 1 2存储异常问题 4 删除异常由于TNO DNO CNO是主键 如果由于健康 外出 科研等原因 教师无法上课 由于主键不全 无法删除教师信息 或者由于教师课程结束 删除课程信息时 把教师的基本信息也删除了 3 1 2存储异常问题 解决以上问题 T TNO TNAME TITLE ADDR DNO D DNO DNAME LOC C CNO CNAME CREDIT TC TNO CNO LEVEL 为什么要规范化 例2 举例 学生选课 第一种方案 学生 课程 选课关系 学号 姓名 性别 出生日期 入学时间 系 课程号 课程名 学时数 成绩 问题 数据冗余 修改异常 插入异常 删除异常 为什么要规范化 例2 举例 学生选课 第二种方案 学生关系 学号 姓名 性别 出生日期 入学时间 系 课程关系 课程 课程号 课程名 学时数 选课关系 选课 学号 课程号 成绩 3 2模式的规范化 1NF 2NF 3NF BCNF 4NF 5NF 定义 在关系模式R中的每一个具体关系r中 如果每个属性值都是不可再分割的最小数据单位 则称R是第1范式的关系 记为R 1NF 3 2 1模式的规范化 第一范式 3 2 1模式的规范化 第一范式 举例1 原表 3 2 1模式的规范化 第一范式 举例1 规范化之后的表 3 2 1模式的规范化 第一范式 举例2 原表 3 2 1模式的规范化 第一范式 举例2 规范化之后的表 3 2 1模式的规范化 第一范式 使一个不规范的关系符合第一范式的方法 包含多个值的字段分解成多个字段使得每个字段只包含一个不可再分的最小数据单位 3 2 2模式的规范化 第二范式 定义1 函数依赖 已知一关系R 属性X是函数依赖于属性Y 如果每一个在R中的X值总有一个Y值与之精确地关联 记为 X Y 3 2 2模式的规范化 第二范式 定义2 函数部分依赖 一个关系R中的非主属性函数依赖于键的一部份而不是整个键 记为 X p Y例如 SC SNO CNO GRADE CREDIT 中CREDIT只函数依赖于CNO 而不是整个键 SNO CNO 3 2 2模式的规范化 第二范式 第二范式定义 若R 1NF 且每一个非主属性完全函数依赖于键 则R 2NF 3 2 2模式的规范化 第二范式 使得表符合2NF的方法 找出并抹去函数依赖于键的一部份而不是整个键的属性 将它们放到不同的表中 解决之道 分解 分解 再分解 在上例中把表分解为 W1 日期 工号 超额 W2 工号 姓名 工种 定额 车间 车间主任 3 2 2模式的规范化 第二范式 举例 3 2 2模式的规范化 第二范式 例子问题 符合1NF 但还有问题 数据冗余 CREDIT重复多次更新异常 调整CREDIT 相应元组也要更新 会产生数据不一致插入异常 下学期的新课 学生没有选修 由于主关键字SNO为空 所以无法插入 删除异常 学期结束后 课程结束 删除课程 同时删除了学生的成绩等 3 2 2模式的规范化 第二范式 例子中问题的关键 关系SC1 SNO CNO GRADE CREDIT 中 CREDIT部分函数依赖于主键 SNO CNO 3 2 2模式的规范化 第二范式 解决方法 分解 分解 再分解 把SC1 SNO CNO GRADE CREDIT 分解为 SC1 SNO CNO GRADE C2 CNO CREDIT 3 2 3模式的规范化 第三范式 定义1 传递函数依赖 关系R中有X Y Y Z X Z 3 2 3模式的规范化 第三范式 定义2 关系模式R中 若不存在这样的码X 属性组Y及非主属性Z Z Y 使得X Y Y Z Y X成立 则称R 3NF 3 2 3模式的规范化 第三范式 为保证表是3NF 你应 发现和抹去功能依赖于不是主键属性的非关键属性 把它们放入不同的表格组合剩余的属性 3 2 3模式的规范化 第三范式 举例 W1 日期 工号 超额 W2 工号 姓名 工种 定额 车间 车间主任 3 2 3模式的规范化 第三范式 问题 工号 姓名姓名 车间工号 车间 3 2 3模式的规范化 第三范式 解决方法 分解 分解 再分解 上例中W2关系继续分解为 W21 工号 姓名 工种 车间 W22 工种 定额 W23 车间 车间主任 3 2 4模式的规范化 BC范式 符合第3范式 都是对非主属性的函数依赖 没有消除主属性对侯选关键字的传递依赖 3 2 4模式的规范化 BC范式 定义 一个关系处于Boyce Codd范式 BCNF 当且仅当每一个决定因子都是候选键 3 2 4模式的规范化 BC范式 为保证表是BCNF 应 发现和抹去覆盖的候选键把部份的候选键和功能依赖的属性放入不同的表中组合剩余的项为一个表格 小结在本课中 你学习了 用规范化来简化表格结构 规范化导致于满足特定约束和代表某种范式的表格的形成 用范式来保证各种类型的不规则性和不一致性不会引入到数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年鄂州市华容区辅警招聘考试题库附答案解析
- 2025吉林大学白求恩第一医院内镜中心洗消工招聘笔试考试参考试题及答案解析
- 2025福建南平松溪县人民法院招聘工作人员4人考试笔试参考题库附答案解析
- 2025年柳州市柳南区辅警招聘考试题库附答案解析
- 2025年信阳市生态环境局潢川分局招聘6名全日制公益性岗位笔试考试备考试题及答案解析
- 2025广东广州天河区同仁艺体实验中学招聘英语教师1人考试笔试参考题库附答案解析
- 江西省赣州市十三校2025-2026学年高一上学期期中联考语文试题(含答案)
- 2025年江西省吉安市永新县保安员招聘考试题库附答案解析
- 2025北京市大兴区司法局招聘临时辅助用工人员1人考试笔试备考题库及答案解析
- 廉洁考试试题及答案下载
- 2026品牌营销日历【营销节点】
- 2025高中历史时间轴与大事年表
- 肾癌病人教育知识培训课件
- 相贯线课件教学课件
- 【地理】跨学科主题学习 认识我国的“世界灌溉工程遗产”课件-2025-2026学年八年级地理上学期(人教版2024)
- 道路监控维护合同范本
- 高一力学知识点总结
- 咯血病人的护理小讲课
- 2025年劳动合同法全文
- Python图像处理课件
- 安全生产违法行为行政处罚办法新
评论
0/150
提交评论