【问题标题】:User defined forms, Store data of different types, 1 table vs multiple用户定义的表格,存储不同类型的数据,1表vs多表
【发布时间】:2012-11-15 16:30:23
【问题描述】:

我正在研究为管理用户构建一种方法,以使用他们定义的自定义字段动态创建表单。会有如下几种不同的数据类型:

varchar(200)varchar(max)Dateint 等...

我计划创建一个名为 formCollectedData 的表来保存一般的表单提交信息,然后再创建另一个表,该表在用户填写表单时输入的每个字段都有一行。

关于数据库结构,我可以用一张表来存储所有输入的字段,如下所示:

根据收集数据的表单元素,一次只有一个可以为空的字段实际存储数据。

或者对每种数据类型都有一个单独的表

我倾向于只拥有一个表,其中每个数据类型都具有可空字段,主要是因为它简化了连接等,但我想就是否将它们分成单独的从长远来看,表有任何好处。有什么想法吗?

目前每天可能会提交几百个表单,每个表单通常有 10 个字段。

我在 C# 世界并计划使用 Linq。

【问题讨论】:

    标签: sql sql-server linq


    【解决方案1】:

    您正在寻找意见,所以这是我的。

    在这里创建多个表的好处是可以避免空值。如本文所述,http://www.sql-server-citation.com/2009/12/common-mistakes-in-sql-server-part-4.html,空值占用磁盘空间。拥有一个包含大量空值的表也不是很性感(从数据库设计的角度来看)。

    老实说,处理这么多表可能会很痛苦,所以如果您必须经常手动查询表(尤其是插入和更新),我只会选择一个表。对于每年大约 40K 行,这没什么大不了的。

    现在是你的电话,选择美丽或方便的方式:-)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-12-25
      • 1970-01-01
      • 2011-04-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多