【发布时间】:2015-07-15 18:19:21
【问题描述】:
我有一个表A,它的行与其他几个表具有多对一的关系。其他表中的行——B、C、D——每个都有很多As。每个A 都专门与另一个表相关。例如,您永远不会有与B 和C 相关的A。
目前,A 表表示为“扁平化”求和类型,其中每一行都有一个可为空的 AId、BId、CId 和 DId。 A 中任何给定行的“父”由这些 FK 中的哪一个非空值决定。
到目前为止,这一直运行良好。但是,我有几个新功能要实现,其中也有很多 As。
我的问题是:有没有比简单地添加更多列来将 FK 存储到这些其他表中更可扩展的设计?
【问题讨论】:
-
如果不了解您的用例,很难说出有用的话。乍一看,我会说拥有这张怪兽桌
A似乎很愚蠢。为什么不为每个B、C和D创建一个子表?是的,它有更多表格,但它增加了清晰度和性能。
标签: sql sql-server database-design sql-server-2012 entity-framework-5