0

在对重复和非重复数据进行规范化时,我有点困惑。查看以下字段:

选项表:

OptionId (PK auto) OptionType
1                  A-C
2                  A-D
3                  A-E

问题:

QuestionId (PK auto) OptionId
1                    3
2                    2
3                    2

如果你看上面的表格,tchnically OptionType 不是重复的,OptionId 是重复的,但它是一个外键,所以我假设它仍然可以OptionId在第一范式中声明不重复。但是因为OptionType它看起来像非重复数据但它不是键,只是一个普通字段,所以下面是正确或不正确的:

重复:

没有任何

非重复:

QuestionId , OptionId , 选项类型

粗体表示它是一把钥匙。我可以简单地选择哪些非重复数据可以和不能是键吗?

4

1 回答 1

0

重复和非重复不是指行。它们指的是一行中的列。

如果您的 OptionType 列要解释如下:AC 表示 A、B、C 等等,那么就有一个论据说 OptionType 是重复列。还有一个论点是说它是一个范围,而不是重复的列,但是,在这种情况下,将范围的下限和上限放在单独的列中会更好。

于 2013-02-19T13:57:19.057 回答