首页 > 编程知识 正文

数据库设计三大范式之第一范式不可违反什么原则,数据库设计六大范式

时间:2023-05-04 00:08:43 阅读:277259 作者:3556

首先关于数据库三大范式是什么,我们不再多说,网上很多博客写的都很好,例如以下链接:

https://blog.csdn.net/qq_26878363/article/details/81533273

版权声明:以上链接为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。

下面我想重点聊一下第一范式。

虽然数据库设计范式是设计经验,不是强制遵守的规则,但是,本人强烈及建议,第一范式要遵守。

数据库设计第一范式内容,简单说就是表的每一列确保原子性,就是表达的意义要唯一,不可细分。

这很好理解,很多人也觉得理所当然,估计没有人会把姓名和年龄做成一列,但是,违法第一范式的设计也有可能真的存在,比如在表里设计一个字段存储邮件内容,这个违反了第一范式,因为邮件内容存储的信息表达的意义不具备唯一性。为什么我着重强调第一范式要遵守呢?像我上面写的这种情形,在一定程度上也没有造成数据冗余,在调用数据发邮件时,不用再进行数据加工,使用起来也方便了。

数据冗余,会造成管理和性能负担,对数据处理错误不会造成直接影响,但是,违反第一范式,还有个致命问题,就是可能含有难以发现隐晦错误。简单说,我们向数据库插入数据时,对那些含有多重意义的字段要进行单独处理,比如,要在邮件里添加公司名,联系电话等,如果公司名添加错了,我们在进行测试时会给问题的发现增加很大难度,因为这个信息藏在篇幅很大的邮件正文里。

综上所述,第一范式不要违反,还是严格遵守为好,可以带来至少三点好处,减少数据处理难度,减少错误数据隐藏可能,减少数据冗余。

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。