注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

为自由而活!

贵在坚持!

 
 
 

日志

 
 

数据库总结(3)-关系模式设计  

2014-09-07 09:59:57|  分类: 技术有关 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
        第三章讲的是关系模式设计模式,是数据库开发中步骤中逻辑模型的核心。逻辑模型又是数据库开发的步骤中的核心,因为它前连接概念模型、上连接外部模型、下连接内部模型。而本章重点讲的是关系模型设计的准则、规则和衡量标准。
          做任何事情都有一个准则,关系模式设计也不例外。怎样的关系模式才算好的模式,在建的时候要朝那个方向努力那?这就引出了第一部分——准侧。
          关系模式在建立的时候要尽量避免数据的冗余、减少异常问题的出现。其实出现异常问题的原因还是关系模式中属性关系冗余,导致改动一个其他也收到影响。这是宏观的说了说建表的准则,而到细节具体怎样做,就要说到非形式化了。1、关系模式设计应只包含直接联系的属性,例如要是建表的话同种实体不能放在一张表中(例如学生和教师)2、相应关系中不要出现操作异常现象(这是课本的话),我的理解是不要出现间接联系,要是有间接联系,也是这条联系在数据库中不会被修改。3、相应关系中避免经常为空的属性。个人理解:特殊部分单独处理   4、等值连接应主键和外键的属性上进行,避免产生额外元祖。额外元祖是指关系模式被分解为数据库模式后,数据库模式中的联系比关系模式中的多,多的部分称为额外元祖。(为什么会多?)
           如果我们要设计关系型数据库的表模式,则很有可能会出现冗余,为了避免这种情况,我们需要一些规则,这些规则称为依赖。所谓函数依赖是指关系中一个或一组属性的值可以决定其它属性的值。函数依赖正象一个函数一元函数 y = f(x) 一样,x的值给定后,y的值也就唯一地确定了。如身份证号——>姓名(唯一)。
1. 函数依赖不是指关系模式R的某个或某些关系实例满足的约束条件,而是指R的所有关系实例均要满足的约束条件。
          2. 函数依赖是语义范畴的概念。只能根据数据的语义来确定函数依赖。例如“姓名→年龄”这个函数依赖只有在不允许有同名人的条件下成立 
3. 数据库设计者可以对现实世界作强制的规定。例如规定不允许同名人出现,函数依赖“姓名→年龄”成立。所插入的元组必须满足规定的函数依赖,若发现有同名人存在, 则拒绝装入该元组。
               上面也有提到逻函数依赖是一种约束条件,而FD逻辑蕴涵就是在这个规则中还可以推理出别的规则。而函数依赖中有满足这部分规则的集合成为函数依赖的封包(右上角小+表示)。FD逻辑蕴涵的推理规则我感觉其实和小时候学习数学中的推理证明是一个道理。
          而关系模式的设计只是停留在逻辑模式阶段,最后还是要向物理模式(内部模式)阶段。所以关系模式设计转化到数据库模式就讲到关系模式的分解,在分解过程中能否保证数据的等价用“无损分解”特性表示,函数依赖是否等价用“保持依赖”特性表示。
而保持“无损分解”特性的分解方法是:无损分解和模式分解。保持 “保持依赖“特性的分解方法是:保持FD的分解。
        而分解完之后评价数据库模式内函数依赖关系的规则则是范式        2014年09月06日 - 殷伟涛 - 殷伟涛 廊坊师范学院信息技术提高班11期2014年09月06日 - 殷伟涛 - 殷伟涛 廊坊师范学院信息技术提高班11期
 
 2014年09月06日 - 殷伟涛 - 殷伟涛 廊坊师范学院信息技术提高班11期
 
     
        总结:在学习新知识的时候,一定要坚持它不是你没有学过的知识,只是旧知识有换了一种角度、一种说法而且。要把这些知识和你学过的知识结合起来,这样才能不断的编制自己的知识网。


  评论这张
 
阅读(128)| 评论(45)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017