您好我几个小时都在考虑我想要解决的数据库规范化问题。在我的问题中,我有一个复合主键,键的一列中的数据有多个值。主键的一列中的多个值是主要问题。我想知道在第一范式中是否只删除除主键之外的重复组,或者还将删除具有多个值的主键列。仍然可能是让人们了解它的模糊不清。所以我发布了表格的截图:
http://tinypic.com/view.php?pic=ev47jr&s=5
(请打开上面的图片查看表格)
这里我想问的问题是,在第一范式中,只删除第4,5,6,7号列,还是删除第2列(因为它还包含多个值)?
如果我不删除第二列,那么它将不会进入1NF,但是如果我也将其删除,那么它将直接转到3NF。帮助
谢谢。
答案 0 :(得分:1)
这里我想问的问题是,是否是第一种正常形式 只删除列号4,5,6,7或列号2 也被删除
将更改包含多个值的所有列。这包括第2栏。
如果我不删除第二列,则它不会进入1NF,但是如果我 删除它,然后它将直接转到3NF。
规范化不能像这样工作:
关系模型并未说明对于1NF中的每个关系R,存在2NF中 的分解,但在3NF中尚未。它只是没有说,但这是一个常见的误解。
实际上,删除部分密钥依赖关系以获得2NF并发现结果为5NF并不罕见。