【发布时间】:2012-02-06 05:34:54
【问题描述】:
除了简单地为每个枚举(特别是当每个表中的行数很少时)?我发现了一个article,它建议只为所有枚举创建一个查找表,这种方法受到 cmets 中的一些人的批评,称它违反了引用数据完整性。如果枚举只被一个表使用,使用一些预定义代码然后为它们添加约束(可能使用扩展属性)是一种好习惯吗?
【问题讨论】:
-
“一个所有枚举的查找表”,又名“一个真正的查找表”,又名“OTLT”,是一种众所周知的 SQL 反模式。你可以谷歌那个。我认为枚举本身是一种数据库反模式,因为它们不容易适应扩展(附加属性)。
标签: sql sql-server database-design normalization