数据依赖对关系模式的影响(续) 假设学校的数据库模式由一个单一的关 系模式 Student构成, 则该关系模式的属性集合为: U=tSno, Sdept, Mname, Cname, Grade A
数据依赖对关系模式的影响(续) 假设学校的数据库模式由一个单一的关 系模式Student构成, 则该关系模式的属性集合为: U ={ Sno, Sdept, Mname, Cname, Grade }
数据依赖对关系模式的影响(续) ●现实世界的已知事实告诉我们: 1.一个系有若干学生,但一个学生只属于 个系; 2.一个系只有一名主任; 3.一个学生可以选修多门课程,每门课程有 若干学生选修; 4.每个学生所学的每门课程都有一个成绩
数据依赖对关系模式的影响(续) 现实世界的已知事实告诉我们: ⒈ 一个系有若干学生, 但一个学生只属于一 个系; ⒉ 一个系只有一名主任; ⒊ 一个学生可以选修多门课程, 每门课程有 若干学生选修; ⒋ 每个学生所学的每门课程都有一个成绩
数据依赖对关系模式的影响(续) 由此可得到属性组U上的一组函数依赖F: F={Sno→ Sdept, Sdept→ Mname, (Sno, Cname)→ Grade Sno Cname G rade Sdept Mname
数据依赖对关系模式的影响(续) 由此可得到属性组U上的一组函数依赖F: F ={ Sno → Sdept, Sdept → Mname, (Sno, Cname) → Grade } Sno Cname Sdept Mname Grade
数据依赖对关系模式的影响(续) ●关系模式 Student<U,F>中存在的问题 1.数据冗余太大 浪费大量的存储空间 例:每一个系主任的姓名重复出现,重复次数 与该系所有学生的所有课程成绩出现次数相同
数据依赖对关系模式的影响(续) 关系模式Student<U, F>中存在的问题: ⒈ 数据冗余太大 – 浪费大量的存储空间 例:每一个系主任的姓名重复出现,重复次数 与该系所有学生的所有课程成绩出现次数相同
数据依赖对关系模式的影响(续) 2.更新异常( Update anomalies) 数据冗余,更新数据时,维护数据完整性 代价大。 例:某系更换系主任后,系统必须修改与该系 学生有关的每一个元组
数据依赖对关系模式的影响(续) ⒉ 更新异常(Update Anomalies) – 数据冗余 ,更新数据时,维护数据完整性 代价大。 例:某系更换系主任后,系统必须修改与该系 学生有关的每一个元组