- 1、本文档共31页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据库课件 第2.4.2节规范化设计
规范化设计(P32-36) 规范化设计理论主要包括三个方面的内容:函数依赖(function dependences)、范式和模式设计方法。其中数据依赖起着核心的作用。 非规范化设计实例 关系模式的冗余和异常问题(一) 例4.1 关系模式的冗余和异常问题(二) 例4.1 关系模式的冗余和异常问题(三) (1)如果规定,每个学生学号只能有一个学生姓名, 学生学号→学生姓名 (2)每个课程编号只能决定一门课程, 课程编号→课程名称 (3)每个学生每学一门课程,有一个成绩, (学生学号,课程编号)→学生课程成绩 (4)还可以写出其他一些FD: 课程编号→(课程名称,教师名称,教师年龄) 教师编号→(教师名称,教师年龄) … 不存在传递函数依赖 4.4.1 第一范式(1NF) 定义: 如果关系模式R的每个关系r的属性值都是不可分的原子值,那么称R是第一范式(first normal form,简记为1NF)的模式。 例如关系模式R(NAME,ADDRESS,PHONE) (如果一个人有两个电话号码) 1NF是关系模式应具备的最起码的条件。 第二范式(2NF) 定义: 如果A是关系模式R的候选码中属性,那么称A是R的主属性;否则称A是R的非主属性。 定义: 如果关系模式R是1NF,且每个非主属性完全函数依赖于候选码,那么称R是第二范式(2NF)的模式 第三范式(3NF) 定义: 如果关系模式R是1NF,且每个 非主属性都不传递依赖于R的候选码(主码),那么称R是第三范式(3NF)的模式。 3NF:不存在传递函数依赖 * 关系数据库的规范化设计是指面对一个现实问题,如何选择一个比较好的关系模式集合。 规范化设计实例 学院: 系: 信息大楼杨波 信息学院 C0002 17号楼张兴杰 公共管理 C0001 地址 电话 院长 学院名称 学院编号 C0002 30 余平祥 信息管理系 X0007 C0002 40 田绪红 计算机科学系 X0006 C0001 30 王建平 社会学系 X0002 C0001 40 游艳玲 公共事业管理 X0001 学院编号 班级个数 系主任 系名称 系编号 X0007 X0006 X0005 X0004 X0003 X0002 X0001 系编号 信息管理系 计算机科学系 土地资源管理 行政管理系 社会工作系 社会学系 公共事业管理 系名称 余平祥 田绪红 吴顺辉 欧阳晓东 卓彩琴 王建平 游艳玲 系主任 30 40 15 10 20 30 40 班级个数 信息大楼杨波 信息学院 C0002 信息大楼杨波 信息学院 C0002 17号楼张兴杰 公共管理 C0001 17号楼张兴杰 公共管理 C0001 17号楼张兴杰 公共管理 C0001 17号楼张兴杰 公共管理 C0001 17号楼张兴杰 公共管理 C0001 地址 电话 院长 学院名称 学院编号 关系的规范化 2.4 逻辑结构设计 1.数据库设计中的问题 如果一个关系没有经过规范化,可能会出现数据冗余大、数据更新造成不一致、数据插入异常和删除异常。 T3 T2 T2 T1 T1 T1 教师 编号 n4 c6 a3 t3 n2 c5 a2 t2 n4 c4 a2 t2 n3 c3 a1 t1 n2 c2 a1 t1 n1 c1 a1 t1 课程 名称 课程 编号 地址 教师 名称 图4.1 关系模式R的实例 数据冗余问题: 如果一个教师教几门课程,那么这个教师的地址就要重复几次存储。 T3 T2 T2 T1 T1 T1 教师 编号 n4 c6 a3 t3 n2 c5 a2 t2 n4 c4 a2 t2 n3 c3 a1 t1 n2 c2 a1 t1 n1 c1 a1 t1 课程 名称 课程 编号 地址 教师 名称 图4.1 关系模式R的实例 操作异常问题: 修改异常。例如教师t1教三门课程,在关系中就会有三个元组。如果他的地址变了,这三个元组中的地址都要改变。若有一个元组中的地址未更改,产生不一致现象。 删除异常。如果要取消教师t3的教学任务,那么就要把这个教师的元组删去,同时也把t3的地址信息从表中删去了。 T3 T2 T1 教师编号 n4 c6 T3 n2 c5 T2 n4 c4 T2 n3 c3 T1 a3 t3 n
文档评论(0)