今天
后记:这篇漫画是《找到关系以后,办事就容易了》的后续,在关系数据库中,“关系”不是随便来的,有一定要求,这就是范式。 满足最低要求的被成为第一范式(1NF),即关系中的每个属性都不可再分。第二范式(3NF)要求非主属性对码都是完全函数依赖, 第三范式(3NF)则消除了非主属性对于码的传递函数依赖。
“码”指的是表中的一个属性或属性组,其他所有属性都完全函数依赖于这个属性或属性组。这些定义都是文绉绉的,漫画是使用例子来说明,大家可以对照书本看下“码”,“函数依赖”这些数学定义。
范式化消除了数据的冗余,不会产生数据的插入、修改、删除的问题,但需要提醒大家注意的是,完全范式化,和完全的反范式化都是不切实际的,在真实的项目中不会非黑即白,经常需要混用,比如漫画中订单表的例子。
如需转载,请通过作者微信公众号coderising获取授权。