好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

[工学]制造信息技术_DB关系数据理论.ppt

51页
  • 卖家[上传人]:豆浆
  • 文档编号:49771025
  • 上传时间:2018-08-02
  • 文档格式:PPT
  • 文档大小:407.50KB
  • / 51 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 现代制造信息技术基础 第一部分 数据库系统概论 关系数据理论徐 世 新北京航空航天大学机械学院7202002 年 7 月现 代 制 造 信 息 技 术 基 础主要内容v问题的提出v回顾关系模型的形式化定义v数据依赖的描述 v规范化v函数依赖v码v范式v2NFv3NFvBCNFv多值依赖v4NF v数据依赖的公理系统v模式的分解现 代 制 造 信 息 技 术 基 础回顾:关系模型的形式化定义问题:针对一个具体问题,应该如何构造一个适 合于它的数据模式,即应该构造几个关系模式,每个 关系由哪些属性组成等关系模式:关系的描述 v关系模式可以形式化地表示为:R R——关系名 U——组成该关系的属性名集合 D——属性组U中属性所来自的域 dom——属性向域的映象集合 F——属性组U上的一组数据依赖关系模式所有可能的关系必须满足一定的完整性约束条件这些约束 或者通过对属性取值范围的限定,或者通过属性值间的相互关连反映 出来属性值间的相互关连称为数据依赖现 代 制 造 信 息 技 术 基 础(1) 由于“U中属性所来自的域D”和“属性到域的映射 dom”对模式设计关系不大,因此我们这里将关系模式看 作一个三元组: R。

      当且仅当U上的一个关系r满足F时,r称为关系模式 R的一个关系 (2) 对关系的基本要求:每一个分量必须是不可分的 数据项满足了这个条件的关系模式就属于第一范式 (1NF) (3) 题目:在模式设计中,假设已知一个模式S,它 仅由单个关系模式组成,问题是要设计一个模式SD,它 与S“等价”,但在某些指定的方面“更好”一些对数据依赖的描述现 代 制 造 信 息 技 术 基 础数据依赖是通过一个关系中属性间值的相等与否体现 出来的数据间的相互关系数据依赖中最重要的是函 数依赖(FD)和多值依赖(MVD)对数据依赖的描述例如:描述一个学生的关系,可以有学号(SNO)、姓名 (SNAME)、系名(SDEPT)等几个属性 由于一个学号只对应一个学生,一个学生只在一个系 学习因而当SNO值确定之后,SNAME和SDEPT的值也 就被唯一地确定了称SNO函数决定SNAME和SDEPT, 或者说SNAME、SDEPT函数依赖于SNO,记为: SNOSNAME,SNOSDEPT现 代 制 造 信 息 技 术 基 础[示例] 建立一个数据库来描述学生的一些情况,对象 有:学生(SNO)、系(SDEPT)、系负责人(MN)、课程 (CNAME)和成绩(G)。

      对数据依赖的描述对数据依赖的描述已知的事实有: (1)一个系有若干学生,但一个学生只属于一个系 (2)一个系只有一名(正职)负责人 (3)一个学生可以选修多门课程,每门课程有若干学生选修 (4)每个学生学习一门课程有一个成绩现 代 制 造 信 息 技 术 基 础描述学校数据库的模式S,它由一个单一的关系模式构成(注 :在此模式中,SNO和CNAME不能为空)此模式有下述缺陷: (1)插入异常对数据依赖的描述对数据依赖的描述属性组U={SNO, SDEPT, MN, CNAME, G} U上的一组函数依赖F={SNOSDEPT, SDEPTMN, (SNO,CNAME)G}SNOCNAMESDEPTMNG(2)删除异常若某系的学生全部毕业了,在删除该系学生选修课 程的同时,把该系及其负责人的信息也丢掉了 (3)冗余太大比如,每个系负责人的姓名要与该系每个学生的每 门功课出现的次数一样多若一个系刚成立尚无学生,或虽有学生但尚未排课,则无法将该系及其 负责人的信息存入数据库因为在上述情况下,SNO或CNAME不存在现 代 制 造 信 息 技 术 基 础对数据依赖的描述对数据依赖的描述模式R(SNO, SDEPT, MN, CNAME, G, SNOSDEPT, SDEPTMN, (SNO,CNAME)G)中的函数依赖存在某些不 好的性质。

      假如把它分成如下的三个模式: S(SNO, SDEPT, SNOSDEPT); SG(SNO, CNAME, G, (SNO,CNAME)G); DEPT(SDEPT, MN, SDEPTMN) 就不会发生插入异常、删除异常的毛病,数据的冗余也 得到了控制现 代 制 造 信 息 技 术 基 础(1) XY,但YX且YX,则称XY是非平凡的函数依赖 (2) XY,但YX,则称XY是平凡的函数依赖 (3) 若XY,YX,则记作XY (4) 若Y不依赖于X,则记作X \ Y[定义] 设R(U)是属性集U上的关系模式X、Y是U的子集若对于 R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属 性值相等,而在Y上的属性值不等,则称X函数确定Y或Y函数依赖 于X,记作XY其中X叫做决定因素函数依赖[定义] 在R(U)中,若XY,且对于X的任何一个真子集X’,都有X’ \ Y,则称Y对X完全函数依赖,记作X F Y 若XY,但Y不完全函数依赖于X,则称Y对X部分函数依赖,记作 X P Y在关系S(SNO, SNAME, SDEPT, SAGE)中,SNOSDEPT,SNOSAGE, SNOSNAME(假设无重名)。

      在关系SC(SNO, CNO, G)中,SNO \ CNO,SNO \ G,(SNO, CNO) FG[定义] 在R(U)中,若XY,(YX且YX),Y \ X,YZ,则称Z对X 传递函数依赖现 代 制 造 信 息 技 术 基 础码[定义] 设K为R中的属性或属性组,若K F U,则K为R的候选 码若候选码多于一个,则选定其中的一个为主码 包含在任何一个候选码中的属性,叫做主属性不包含在任何码 中的属性称为非主属性关系模式R(Performer, Opus, Audience),假设一个演奏者可以演奏多个作品 ,某一作品可被多个演奏者演奏听众可以欣赏不同演奏者的不同作品 这个关系模式的码为Performer、Opus、Audience,即全码(All-key)[定义] 关系模式R中属性或属性组X并非R的码,但X是另一个关系 模式的码,则称X为R的外码例如,SC(SNO, CNO, G)中,SNO不是码,但SNO是关系模式S(SNO, SDEPT, SAGE)的码,则SNO是关系模式SC的外码现 代 制 造 信 息 技 术 基 础v关系数据库中的关系是要满足一定要求的,满足不 同程度要求的为不同范式。

      满足最低要求的叫第一范式 (简称1NF),在第一范式中满足进一步要求的为第二范 式,其余以此类推v所谓“第几范式”,是指符合某一级别的关系模式的 集合,R为第几范式就可以写成RxNFv各种范式之间的联系: 5NF4NFBCNF3NF2NF1NFv一个低一级范式的关系模式,通过模式分解可以转 换为若干个高一级范式的关系模式的集合,这种过程就 叫规范化范式现 代 制 造 信 息 技 术 基 础v[反例] 关系模式S_L_C(SNO, SDEPT, SLOC, CNO, G)v其中,SLOC为学生的住处,且每个系的学生住在同一个地方v函数依赖有: (SNO, CNO) FG SNO  SDEPT, (SNO, CNO) PSDEPT SNO  SLOC, (SNO, CNO) PSLOC SDEPT  SLOC2NF[定义] 若R1NF,且每一个非主属性完全函数依赖于码 ,则R2NF可以看到非主属性SDEPT、SLOC并不完全函数依赖于 码(SNO, CNO),因此S_L_C2NFSNOCNOSDEPTSLOCG现 代 制 造 信 息 技 术 基 础2NF一个关系模式R2NF,会产生下述问题: (1)插入异常。

      假如要插入一个学生SNO=S7,SDEPT=PHY, SLOC=DORM2,但该生还未选课,即该生无CNO,这样的元组就 插不进S_L_C中,因为码值的一部分为空,因而学生的固有信息 无法插入 (2)删除异常假定学生S4原来只选一门课C3现C3这门课他也不 选了,那么C3这个数据项就要删除而C3是主属性,删除了C3 ,整个元组就必须跟着删除,使得S4的其他信息也被删除了,从 而造成删除异常,即不该删除的信息也被删除了 (3)修改复杂某学生从MA系转到CS系,这本来只需修改此学生 的元组中的SDEPT分量但因为S_L_C中还含有系的住处SLOC属 性,学生转系将同时改变住处,因而还必须修改元组中的SLOC 分量另外,若该生选修了k门课,SDEPT、SLOC重复存储了k次 ,不仅冗余度大,且必须无遗漏地修改k个元组中全部SDEPT、 SLOC信息,造成修改的复杂化现 代 制 造 信 息 技 术 基 础v解决办法:用投影分解v问题在于非主属性有两种,一种如G,它对码是完全函数 依赖;另一种如SDEPT、SLOC,对码是部分函数依赖v解决办法是用投影分解把关系模式S_L_C分解为两个关系模 式:SC(SNO, CNO, G)和S_L(SNO, SDEPT, SLOC),使得非主属性 对码都是完全函数依赖。

      2NFSNOCNOGSDEPTSLOCSNO现 代 制 造 信 息 技 术 基 础推论:若R3NF,则每个非主属性既不部分依赖于码也不传递 依赖于码3NF[定义] 关系模式R中若不存在这样的码X,属性组Y及非主属性Z (ZY且ZY)使得XY (Y \ X),YZ成立,则称R3NF[例子] ①在关系模式R(职工号,工资级别,应发工资)中,职工号 工资级别,而工资级别应发工资因此有职工号 传递 应发 工资 R3NF ② 关系模式S_L(SNO, SDEPT, SLOC)中,由SNOSDEPT (SDEPT \ SNO),SDEPTSLOC,可得SNO 传递SLOC因此 S_L3NF 关系模式SC(SNO, CNO, G)中没有传递依赖,SC3NF 解决办法也用投影分解:将S_L(SNO, SDEPT, SLOC)分解为S_D(SNO, SDEPT)和D_L(SDEPT, SLOC),分解后S_D3NF, D_L 3NF现 代 制 造 信 息 技 术 基 础一个满足BCNF的关系模式有: ① 所有非主属性对每个码都是完全函数依赖; ② 所有主属性对每个不包含它的码,也是完全函数依赖; ③ 没有任何属性完全函数依赖于非码的任何一组属性。

      BCNF[定义] 关系模式R1NF,若XY(YX且YX)时X必包含有码,则 称RBCNF推论:关系模式R中,若每个决定因素都包含码,则RBCNF[例子] ①关系模式C(CNO, CNAME, PCNO),C3NF同时C中CNO 是唯一的决定因素,所以CBCNF ② 对于关系模式S(SNO,SNAME, SDEPT, SAGE),假定SNAME具有 唯一性,则S有两个码其他属性不存在对码的部分依赖和传递 依赖,所以S3NF同时S中除SNO、SNAME外没有其他决定因 素,所以SBCNF现 代 制 造 信 息 技 术 基 础BCNF[例子] ③ 关系模式SCP(Student, Course, Place),每个学生选修每门 课程的成绩有一定的名次,每门课程中每一名次只有一个学生 由语义可得到函数依赖:(Student, Course)Place,(Course, Place)Student所以(Student, Course)、(Course, Place)都可作为候 选码SCP中无非主属性,故SCP3NFSCP中无其他决定因素 ,故SCPBCNF④ 关系模式STC(S, T, C)中,S学生、T教师、C课程。

      每一教师只 教一门课,每门课有若干教师,某一学生选定某门课,就对应 一个固定的教师由语义可得到函数依赖:(S,C)T,TC (S,C)是STC的码因为(S,C) F T,且T无对(S,C)的传递依赖,故 STC3NF但STC。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.