




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
关系数据库设计(1) 实体间的联系(2) 实体内部的联系数据库设计的基本问题在属性集合上成立的数据完整性约束数据依赖:通过一个关系中属性间值的相等与否体现出来的数据相互关系,函数依赖和多值依赖是最重要的两种数据依赖。关系模式存在的问题数据冗余更新异常插入异常删除异常1. 完全函数依赖有一关系模式r(u),设x、y是该关系模式r(u)的不同属性子集,若xy成立,且x中不存在任何真子集 ,使得 x不是y的子集也成立,则称y完全函数依赖于x,即为完全依赖关系。2. 部分函数依赖定义3:在关系模式中,设x、y是该关系模式r(u)的不同属性子集,若xy成立,如果x中存在任何真子集x,而且有xy也成立,则称y对x是部分函数依赖3. 传递函数依赖定义4:设x、y、z是某关系模式r(u)的不同的属性子集,定义中说明yx,是因为如果yx,则有xy,实际形成xz是直接函数依赖,而非传递函数依赖。例:snoclass, classdept,则有:snodept函数依赖和键的关系(1) 超键、候选键(2) 主键(即主关键字)(3) 外键(即外部表的码)(4) 主属性和非主属性模式分解解决数据的冗余和操作异常的方法是模式分解,消除“不良”的函数依赖,从而获得良好的关系模式。具有无损连接特性和保持函数依赖特性无损连接:是指分解后的关系经过自然连接可以恢复成原来的关系保持函数依赖:是指分解后的关系不能破坏原来的函数依赖逻辑蕴含和闭包逻辑蕴含:根据给定的一组函数依赖来判断另外一些函数依赖是否成立。例如:设f= ab,bc ,则函数依赖ac被f逻辑蕴含,记作:f |= ac。即函数依赖集 f 逻辑蕴含函数依赖ac。可通过选择一个属性子集,判断该属性子集能函数决定哪些属性,这就是利用属性集闭包的概念。可通过选择一个属性子集,判断该属性子集能函数决定哪些属性,这就是利用属性集闭包的概念。关系模式的规范化数据依赖引起的主要问题是操作异常,解决的办法是进行关系模式的合理分解,也就是进行关系模式的规范化。范式:符合某一种级别的关系模式的集合。由于对关系模式的规范化要求不同,出现了不同的范式,有1nf、2nf、3nf、bcnf、4nf、5nf等。其规范化的条件按上述次序越来越强,后面范式可以看成前面范式的特例。把低级范式的关系模式,通过分解转换为高一级范式的关系模式的集合,这个过程称为关系模式的规范化设计。第一范式如果一个关系模式r( u )的所有属性都是基本的、不可再分的最小数据项,称为第一范式。如果关系模式仅仅满足第一范式,可能会存在数据冗余和操作异常。 函数依赖包括: (sno, cno) f grade sno sdept (sno, cno) p sdept sno sloc (sno, cno) p sloc sdept sloc (1) 插入异常 假设sno2005102,sdeptjsj,slocn的学生还未选课,无课程号,由于“课程号”这一主属性未赋值,导致该生的sdept等信息无法录入slc。(2) 删除异常 假定某个学生已选修了一门课程,但因身体不适,需放弃所选修课程。由于课程号是主属性,要删除该学生选修的课程,将导致该生信息的整个元组都要删除。(3) 修改复杂 学生转系时,在修改学生元组的sdept值的同时,还可能需要修改住处(sloc)。如果这个学生选修了多门课,则必须无遗漏地修改该生有关的所有元组中的sdept、sloc信息。(4) 数据冗余度大 如果一个学生选修了10门课程,那么他的sdept和sloc值就要重复存储了10次。sc(sno, cno, grade) sl(sno, sdept, sloc)第二范式定义: 如果关系模式r满足第一范式,且它的任何一个非主属性都完全函数依赖于任一个候选码,则r满足第二范式(简记为r属于2nf)。(1)所有单属性关键字关系都自然是2nf关系 (2)如果关键字是多属性组成的复合关键字,且存在非主属性对关键字的部分函数依赖,则这个关系不是2nf关系。 函数依赖:snosdept sdeptsloc snosloc sloc传递函数依赖于sno,即sl中存在非主属性对码的传递函数依赖。这种传递函数依赖的存在仍会导致操作异常和数据冗余问题第三范式定义:如果关系模式r满足 2nf,并且它的任何一个非主属性都不传递函数依赖于任何候选码,则称r是第三范式3nf, 记作r属于3nf。 如果存在非主属性对关键字的传递依赖,则相应的关系模式就不是3nf关系。例:sl(sno, sdept, sloc) 2nf sl(sno, sdept, sloc) 3nf2nf关系分解为多个3nf关系后,可以解决原2nf关系中存在的操作异常和数据冗余问题。函数依赖图:采用投影分解法,把sl分解为如下两个关系模式,以消除传递函数依赖: sd(sno, sdept) dl(sdept, sloc)sd的码为sno, dl的码为sdept。bc范式(bcnf)设关系模式r1nf,如果对于r的每个函数依赖xy,若y不属于x,则x必含有候选码,那么rbcnf。如果r(u,f)3nf,并且不存在主属性对非主属性的函数依赖,则r(u,f)bcnf。由关系模式的定义可以得到如下结论,若r属于bcnf,则r有:1.所有非主属性对每一个码都是完全函数依赖。2.所有的主属性对每一个不包含它的码,也是完全函数依赖。3.没有任何属性完全函数依赖于非码的任何一组属性。由于rbcnf,按定义排除了任何属性对码的传递依赖与部分依赖,所以r3nf。但是若r3nf,则r未必属于bcnf。保持3nf,警惕主属性对非主属性的函数依赖带来的操作异常现象。一个关系模式如果属于bcnf,那么在函数依赖范畴内已实现了彻底的分解。多值依赖(多值依赖的缺点是:数据冗余太大)设r(u)是属性集u上的一个关系模式。x,y,z是u的子集,并且z=u-x-y。关系模式r(u)中多值依赖xy成立,当且仅当对r(u)的任一关系r,给定的一对(x,z)值有一组y的值,这组值仅仅决定于x值而与z值无关。平凡的多值依赖与非平凡的多值依赖:若xy,而z为空集,则称xy为平凡的多值依赖;若z不为空,则称其为非平凡的多值依赖。第四范式r1nf,如果对于r的每个非平凡多值依赖xy(y x),x都含有候选码,则r4nf。4nf就是限制关系模式的属性值之间不允许有非平凡且非函数依赖的多值依赖。因为根据定义,对于每一个非平凡的多值依赖xy,x都含有候选码,于是就有xy,所以4nf所允许的非平凡的多值依赖实际上是函数依赖。函数依赖和多值依赖是两种最重要的数据依赖。如果只考虑函数依赖,则修正第三范式后的bcnf的关系模式规范化程度已经是最高的了。数据库设计过程:指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。软件设计1 可行性分析2 需求分析3 总体设计4 详细设计5 编码与测试6 综合测试7 软件运行维护数据库系统设计流程l 规划l 需求分析阶段l 概念设计阶段l 逻辑设计阶段l 物理设计阶段l 数据库实施阶段l 数据库运行和维护阶段数据字典是各类数据描述的集合,通常包括数据项、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高端住宅小区物业管理合同签订与物业服务标准
- 精细定制事实婚姻离婚房产分割及赡养费支付协议范本
- 离婚财产分割协议书范本:股权、股票、投资收益分配
- 盐湖提锂技术2025年成本优化与产能扩张产业政策与市场环境适应性策略创新报告
- 2025设施租赁与安装协议
- 影视工业化制作流程2025年质量控制与影视行业标准化建设分析报告
- 2025年新能源汽车充电设施智能化对电动汽车充电服务市场拓展影响报告
- 2025建筑材料采购协议范本下载
- 2025年中国高速吹风机行业市场全景分析及前景机遇研判报告
- 智慧社区团购2025年运营管理与用户持续活跃度提升策略报告
- 同期线损培训课件
- 反诈知识竞赛试题及答案
- 钢筋加工棚租赁合同范本
- 眼整形课件教学课件
- 公司法务知识培训会课件
- 2025-2026学年秋季第一学期学校德育工作安排表
- 2025年全面质量管理知识竞赛题库及参考答案
- 医药行业KA经理工作汇报
- 浙教版2025-2026学年八年级上科学第1章 对环境的察觉 单元测试卷
- 纤维素基包装生物力学性能-洞察及研究
- 2025年海南省财金集团有限公司招聘笔试模拟试题及答案解析
评论
0/150
提交评论