是否有动态生成SQL表的有效方法?

时间:2013-07-19 14:43:32

标签: sql database-design

我正在构建一个应用程序,用户可以在其中创建任意数量的Web表单。表格将涵盖广泛的主题,可能包含各种领域,分为任意数量的子表格。

为了使其不成为规范化问题,我的应用程序动态生成子表单的表。最终架构可能看起来像这样(简化):

/ *静态表 - 层次级别1 * /
[ProjectTable]
project_id(KEY,AUTO INC),, project_name

/ *静态表 - 层次级别2 * /
[RegistrationTable]
project_id(PARENT ID),registration_id(KEY,AUTO INC),registration_date

/ *动态表 - 层次级别3 * /
[RegistrationSubTable_xxxxxxxx]
registration_id(父母ID),名字,姓氏,电子邮件

/ *动态表 - 层次级别3 * /
[TRegistrationSubTable_yyyyyyyy]
registration_id(父母ID),book_title

(我希望这是可以理解的:)

我担心的是,动态表的数量将无限增长,在几年内达到数万。这会给SQL(当前的MS SQL)带来问题吗?

我有没有想到的任何警告?

1 个答案:

答案 0 :(得分:0)

我发现此主题maximum-number-of-workable-tables回答了我的问题。

简而言之,它不会导致性能损失大于10万的表,甚至数百万。对于具有许多小表的性能而言,具有较少的巨大表是更好的。问题是查询和管理它们。就我而言,这不是问题,因为我的应用程序已经为我做了这个。