1关系模式的理解?
关系模式就是一张二维表。
举例说明:
关系模式中存在问题:1数据冗余太大,浪费大量的存储空间;2更新异常,更新数据时,维护数据完整性代价太大;3插入异常,该插入的数据差不进去;4删除异常,不该删的数据不得不删。这是由于不合理的函数依赖造成的。规范化化数据库设计可以解决这个问题;
2函数依赖的理解?
3范式的理解?
如果一个关系模式R的所有属性都是不可分的基本项。则R属于1NF;第一范式是最基本的关系模式的要求;
若关系模式R属于1NF,并且每一个非主属性都完全函数依赖于R的码,则R属于2NF。在1NF基础上消除非主属性对主码的部分函数依赖。
在第二范式的基础上,第三范式就是任何非主属性不依赖于其它非主属性。(在2NF基础上消除传递函数依赖)第三范式需要确保数据表中的每一列数据都和主键直接相关,而不能间接相关。
BCNF是修正的第三范式,设关系模式R<U,F>∈1NF,如果对于R的每个函数依赖X→Y,若Y不属于X,则X必含有候选码,那么R∈BCNF。