首页 > 代码库 > 重识数据库设计——【软考】

重识数据库设计——【软考】

  之前做机房的时候写过一篇【个人机房重构】——创建数据库三部曲 ,主要写了三范式、E-R图简单创建,现在看起来,光追求宏观不考虑细节是不够的。软考下午题里面的数据库设计的题,让我恶补了一下之前的知识漏洞。

  这个题主要分为三部分:补充E-R图,转换成关系模式并找出主外键,偶尔会考察一下跟数据库有关的概念(比如弱实体)。

  磨刀不误砍柴工,要想做好这道题,主要是E-R图转换成关系模式的算法存在问题,下面是对我错因的整理,希望能对大家有些帮助


二元联系:

  1)如果实体间联系是1:1,则任一一关系模式属性加入另外一关系模式的键(为外键)和联系类型的属性。

  2)如果实体间联系是1:n,则在N端实体类型转化成的关系模式中加入1端实体类型的键(作为外键)和    联系类型的属性。

   [易错点:如果把N和1之间的联系单独抽出一张表,那么N的主键关系的主键。比如提高班,米老师教    多个学生,每个学生只有米老师一个老师,老师和学生之间的关系是授课,那么唯一能标识授课关系的主键    就是学生号,因为老师只有一个。。。,详题见2011年11月软考真题]

  3)如果实体间联系是M:N,则在N端实体类型转换成关系模式,其属性为两端实体类型的键(作为外键)加    上联系类型的属性,而键为两端实体键的组合。[易错点:找主键的时候为联合主键]

  

外键错因有三:

  1)不明概念。

    外键是其他关系模式的主键,非主键有再多种可能都不考虑。

  2)跟E-R图没有对应好。

    [例如:E-R图中存在商人实体,但是关系模式里面没有,写外键的时候忽略了]

  3) 忽略了联合主键的外键。


总结:

  这道题并不难,易错反映了自己学习存在的问题,1.概念不明,一直前行,最基础的知识没有打牢固,导致后面的学习模棱两可。2.不将就是发现的源动力,遇山开山,遇水搭桥,逃避永远都会再相逢。



重识数据库设计——【软考】