【发布时间】:2014-07-28 03:40:57
【问题描述】:
我正在尝试找出如何确定构建数据库的最佳平衡点。我希望能够存储来自不同人提交的几种不同表单的信息,有时是多次(例如每年更新一次)。我被困在为每个表单使用不同的表,或者表单和元素定义和元素值表的组合之间。
示例A:有三种不同信息的表格,所以有四个表格,[FormA]、[FormB]和[FormC],每个表格都有与各自表格关联的数据,全部FKed到[Customers ].
示例 B:相同的三个表格,但这次有五个不同的表格。 [FormDescriptions] 定义表单名称、类型等,并具有三个条目,每个表单一个。 [Forms] 对 [Customers] 和 [FormDescriptions] 的 FK,并将它们与提交日期结合使用以区分各个提交。 [FormElements] 定义了三个表单中的所有元素,在 FormDescriptions 上有一个 FK 和一个唯一的 elementID。 [ElementValues] 对 [FormElements] 和 [Forms] 进行 FK,并将所选元素的值存储在所选表单上。
我的问题是,这些方法中的一种在本质上是否比另一种更好,如果不是,在哪些情况下各自优于另一种?非常感谢您想要包含的原因或原因。
【问题讨论】:
标签: sql database database-design relational-database database-schema