日期:2014-05-18  浏览次数:20496 次

很多人对数据库的“第一范式(1NF)”理解有误......
网上看了一篇帖子,关于数据库的范式的总结,其中对1NF的叙述:“很显然,在当前的任何关系数据库管理系统(DBMS)中,傻瓜也不可能做出不符合第一范式的数据库,因为这些DBMS不允许你把数据库表的一列再分成二列或多列。因此,你想在现有的DBMS中设计出不符合第一范式的数据库都是不可能的。”而且转载颇多,也不知道是哪个哥们的原创?---看后,不禁哑然失笑--这个太误导初学者了!
例如:学生表(学号,姓名,电话)

学号,姓名,电话
0001,张三,手机:1333333333 家庭:0111-1234567......

你认为这个表符合1NF吗 ?欢迎讨论


------解决方案--------------------
沙发。。。
个人认为不符合1NF,它完全可以拆分成两个列嘛,如果说1NF没有用的话,那还设计它做什么呢?
------解决方案--------------------
仁者见仁
------解决方案--------------------
支持搂主

数据有问题就是设计有问题,因设计有问题才会产生有问题的数据。

------解决方案--------------------
看实际应用,我觉得这样设计也不算错,可以把这个“电话”想象成“基本信息”,这样里面的内容就是一大段文本简介,这样也是可以的……
------解决方案--------------------
表虽然像是一范式,但是设计决定不是1NF