第12单元关系数据库及数学基础主讲:刘志强内容摘要:

男 中山装 中 女 裤 子 小 女 大 衣 大 男 中山装 中 女 裤 子 小 女 大 衣 大 男 中山装 中 女 裤 子 小 女 大 衣 大 涤 卡 蓝涤 卡 蓝涤 卡 蓝华达呢 黑华达呢 黑华达呢 黑毛 涤 褐毛 涤 褐毛 涤 褐质 料 单 价 品 种 规 格涤 卡 蓝涤 卡 蓝涤 卡 蓝华达呢 黑华达呢 黑华达呢 黑毛 涤 褐毛 涤 褐毛 涤 褐下一页 上一页 停止放映 第 44页 自然联结运算数学表示 设 K1元关系 R与 K2元关系 S有相同的属性名B1,B2,… ,Bn,则关系 R和关系 S的自然联结记为 : R S=RS中所有不重复的属性表 (f(RS)) 其中 f(RS)为一逻辑函数 ,当 t1R,t2 S,t1和t2中同名属性值相等时 ,该函数的函数值为‚ 真 ‛ (True)。 例如,选三好优秀生的自然联结运算可记为: ST_MARK = STUDENT PE = 1,2,3,4,5,6,7,8,12(f(STUDENT  PE)) 下一页 上一页 停止放映 第 45页 五、关系的规范化理论基础 如何评价关系模型的好坏,这关系到如何设计关系模型(关系框架)的问题。 以 SCT关系为例说明存在的问题: SCT关系是由 S(学号)、 C(课程号), GRADE(成绩)、 TNAME(教师姓名)、 TAGE(教师年龄)、OFFICE(办公室)属性组成。 SCT关系 (学生课程教师关系) S C GRADE TNAME TAGE OFFICE S1 C1 90 周 45 301 S1 C2 91 刘 39 302 S1 C3 85 刘 39 302 S1 C4 87 王 51 301 S2 C1 92 周 45 301 S3 C1 75 周 45 301 S3 C2 56 刘 39 302 下一页 上一页 停止放映 第 46页 关系模式的存储异常问题 在上述 SCT关系中,至少存在下列问题: – 数据冗余 – 更新异常 –插入异常 –删除异常 下一页 上一页 停止放映 第 47页  如果某门课程有 100个学生选修,就要出现100个元组(记录),相应的教这门功课的教师的姓名、年龄、办公室也要出现 100次。 SCT关系 (学生课程教师关系) S C GRADE TNAME TAGE OFFICE S1 C1 90 周 45 301 S1 C2 91 刘 39 302 S1 C3 85 刘 39 302 S1 C4 87 王 51 301 S2 C1 92 周 45 301 S3 C1 75 周 45 301 S3 C2 56 刘 39 302 下一页 上一页 停止放映 第 48页  对 SCT关系中的元组进行修改,可能导致出现存储数据不一致的情况。 例如,要修改第一元组中的OFFICE值时,将 ‘ 301‟改为 ‘ 303‟,会出现周老师的办公室号码不一致,除非修改所有周老师元组(记录)中的办公室号码。 SCT关系 (学生课程教师关系) S C GRADE TNAME TAGE OFFICE S1 C1 90 周 45 303 S1 C2 91 刘 39 302 S1 C3 85 刘 39 302 S1 C4 87 王 51 301 S2 C1 92 周 45 301 S3 C1 75 周 45 301 S3 C2 56 刘 39 302 下一页 上一页 停止放映 第 49页  如果某课程决定由张老师担任,但在还不知道哪些学生选修前,无法将张老师的记录插入关系中。 因为,在 SCT关系中( S, C)是主关键字,在 C不确定的情况下,根据关系模型的实体完整性规则,不允许主关键字中出现空值。 因此,在 C不确定的情况下,不能插入该记录。 SCT关系 (学生课程教师关系) S C GRADE TNAME TAGE OFFICE S1 C1 90 周 45 301 S1 C2 91 刘 39 302 S1 C3 85 刘 39 302 S1 C4 87 王 51 301 S2 C1 92 周 45 301 S3 C1 75 周 45 301 S3 C2 56 刘 39 302 C5 张 30 304 下一页 上一页 停止放映 第 50页  如果要删除某门课程的所有成绩,则会将教这门功课的教师信息也删除掉。 例如,若要删除 ‘ C4‟的元组,结果会丢失王老师的有关信息。 显然,这是不希望发生的事情。 SCT关系 (学生课程教师关系) S C GRADE TNAME TAGE OFFICE S1 C1 90 周 45 301 S1 C2 91 刘 39 302 S1 C3 85 刘 39 302 S1 C4 87 王 51 301 S2 C1 92 周 45 301 S3 C1 75 周 45 301 S3 C2 56 刘 39 302 下一页 上一页 停止放映 第 51页 关系的规范化举例 显然, SCT关系的性能是很差的。 如果将 SCT关系分解为两个子关系 SC和 CT,即 SC( S, C,GRADE)、 CT( C, TNAME, TAGE, OFFICE) 上述存储异常问题将消失。 C TNAME TAGE OFFICE C1 周 45 301 C2 刘 39 302 C3 刘 39 302 C4 王 51 301 S C GRADE S1 C1 90 S1 C2 91 S1 C3 85 S1 C4 87 S2 C1 92 S3 C1 75 S3 C2 56 SC关系 CT关系 下一页 上一页 停止放映 第 52页 产生储异常问题的原因 为什么会产生存储异常的问题呢。 这与每个关系模式中各属性值之间的联系有关。 在 SCT关系中,( S, C)是主关键字,它们的值唯一决定其它所有属性的值,形成一种依赖关系。 TANME、TAGE、 OFFICE的属性值由课程号 C决定,与学号S无直接联系。 把无直接联系的教师属性和学生学号放在一起,就产生了存储异常的问题。 因此,模式设计时强调 ‚ 独立的联系,独立表达 ‛。 这是一条设计原则。 将 SCT分解为 SC、 CT,就符合这条设计原则。 通常,将结构较简单的关系取代结构较复杂关系(简单和复杂是指数据相关性而言)的过程称为关系的规范化。 当然,这个过程既不能增加,也不能丢失信息,称之为 ‚ 无损连接 ‛。 下一页 上一页 停止放映 第 53页 关系 BORROW 8212102 陆华 自控 86 女生宿舍 206 6201 自控原理 0621 张山 自控教研室 花园路 312号 6201 自控原理 0621 张山 自控教研室 花园路 312号 3104 数据处理 0621 张山 自控教研室 花园路 312号 5112 晶体管电路 8212103 何白 自控 86 女生宿舍 206 5112 晶体管电路 书证号 姓名 单位 住址 书号 书名 日期 下一页 上一页 停止放映 第 54页 关系 BICYCLE 品 名 厂 家 厂 长 产 地 年产量 单 价 黄山牌 26男车 黄山自行车厂 刘同利 合肥 20200 黄山牌 26坤车 黄山自行车厂 刘同利 合肥 23000 红旗牌 24坤车 海河自行车厂 王山 天津 76000 大象牌 28男车 生发自行车厂 丁三元 广州 10。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。