根据其他表的列值维护表

时间:2013-10-11 18:59:25

标签: sql

我遇到的情况就像我需要根据父表的列值创建表。这是场景

我有动态输入表,用户可以在页面中定义他们想要的控件。现在表格是每个控件的所有属性。例如,如果我想让用户启用添加TextBox和Checkbox table将包含

之类的字段

常用字段

  • InputID
  • InputName
  • 类型(文本框/复选框)
  • 标签

TextBox规范。领域

  • 文字
  • 的MaxLength
  • IsNumbersOnly

CheckBox Spec。领域

  • IsDefaultChecked
  • CheckBoxText
  • GroupID - 如果我想在一个组中有多个复选框

以上只是为了样本。像这样我想有很多控件下拉列表,列表框等。有点困惑重新定义表来维护这些信息。一种选择是将表定义如下

可输入

  • InputID
  • InputName
  • 类型(文本框/复选框)
  • 标签

TextBoxTable

  • InputID
  • 以及所有与文本框相关的字段

CheckBoxTable

  • InputID
  • 以及所有与复选框相关的字段

依旧......

这是根据其他表的列值(在本例中为InputTable)维护表中值的更好方法。或者有更好的方法来做同样的事情。

如果您有任何更好的想法,请告诉我。

提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以为所有控件创建一个通用表,其中包含一个id,名称...然后是一个具有外键引用的id的表,另外还有两列:property_name和value。使用每个控件的每个属性填充此表。