1

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

varchar(200), varchar(max), Date,int等...

我计划有一个名为formCollectedData保存一般表单提交信息的表,然后有另一个表,其中包含用户填写表单输入的每个字段的行。

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

在此处输入图像描述

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

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

在此处输入图像描述

我倾向于只拥有一个表,该表对于每种数据类型都具有可空字段,主要是因为它简化了连接等,但我想就将它们分解成单独的表是否有任何好处获得其他意见长跑。有什么想法吗?

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

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

4

1 回答 1

0

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

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

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

现在这是您的电话,在美丽或方便的方式之间进行选择:-)

于 2012-11-15T17:16:29.440 回答