数据库设计_疫情数据库之后的总结
好学力行,学以致用,必求甚解2333!
逻辑结构的优化:
首先,求关系模式的候选码,确定主属性和非主属性,判断范式级别是否为3NF?
其次,如果R不是3NF的话,将其模式分解为满足无损连接性和函数依赖保持的3NF形式。
数据库设计这一章就相当于“读题+第一章的画E-R图+第四章的关系规范化理论”2333
我设计的比较喜庆的数据库如下:
大佬们的逼格比较高的数据库如下,嘤嘤嘤:
嘤嘤嘤,依稀记得闫老师说得
以上,大佬门的数据库要很认真地去揣摩2333!
老师是在说,今年20分地数据库大题就是会考疫情数据库地。10分的画ER图,10分的好像是
------------------------------------------------------------------------------------------------------------
回看以下数据库设计:
往往的很多时候,我们是要在需求分析的前一步加上可行性分析(像ycr聚聚那样2333)。作为程序员也是要有口才的哦(手动滑稽2333)
画E-R图本身并不难,只要知道实体集和实体集之间的联系,我们就能够给它画出E-R图,因为ER图用矩形框表示实体集,用菱形框把两个实体集联系起来,
标注出来它是一对一,一对多还是多对多的联系所以这个画不难,关键是需求分析的结果要准确。
那么E-R图画好之后,我们进行的是逻辑结构设计,逻辑结构设计就是将E-R图转换成我们的关系模式,有哪些关系模式R,R中有哪些U,那么第一个每个实体集就是一个R,
然后再看实体集之间的联系,一对多的时候只要把1方的关键字纳入多的一方,这就表示多的体现,然后多对多关系的转换,我们只能是生成一个新的关系,新的关系是架起两个
多对多关系实体集的桥梁。一对多,一方不动,多方加了一个属性,它的关键字都不发生变化,然后一对一的关系就看你自己2333.
所以我们要判断是几范式。我们一般到3NF(保持无损连接和函数依赖保持)就可以了。逻辑结构优化的时候,我们就判断是不是3NF,如果不是的话,就转换成3NF。2333.
这个逻辑结构的优化,就是要主要用用关系规范化理论。首先求出最小函数依赖集,然后要找出它的关键字的码,然后通过这个码找出它的非主属性和主属性之间的关系,
有部分依赖肯定不是2NF,完全函数依赖就一定是2NF,有传递依赖肯定不是3NF,所以满足完全函数依赖而且没有传递依赖的才是3NF,不满足怎么做,你就要进行模式分解,
模式分解的时候一定要做到函数依赖保持和无损连接。我们这里讲过操作的方法,也讲过判定的方法,2333!
逻辑结构的优化: