在对重复和非重复数据进行标准化时,我有点困惑。请看下面的字段:
Option_Table:
OptionId (PK auto) OptionType
1 A-C
2 A-D
3 A-E
问题:
QuestionId (PK auto) OptionId
1 3
2 2
3 2
如果你看一下上面的表格,技术上的OptionType不会重复,而且OptionId正在重复,但它是一个forign键,所以我假设状态OptionId
仍然可以在第一范式中不重复。但对于OptionType
,它看起来像非重复数据,但它不是一个键,只是一个普通字段,因此低于正确或不正确:
重复:
无
非重复:
QuestionId , OptionId ,选项类型
粗体意味着它是一把钥匙。我可以简单地选择哪些非重复数据,也可以不是键?
答案 0 :(得分:0)
重复和非重复不引用行。它们引用一行中的列。
如果要将OptionType列解释如下:A-C表示A,B,C等,则有一个参数表明OptionType是重复列。还有一个论据是说它是一个范围,而不是重复的列,但是,在这种情况下,你可以在单独的列中更好地处理范围的下限和上限。