我正在寻找有关使用C#和SQL数据库(特别是MS SQL Server Express)存储多个值的最佳方法的建议。我可以将数据输入到表A和表B中,但是当填写表单2时,我不确定如何将所有10个步骤存储到数据库中。
应用程序的工作方式是用户从表单1的组合框中选择一个项目,按下提交按钮。然后表A和表B得到更新。一旦表格有了它们的值,表格2就会打开,用户填写数据并提交数据以存储在表B中。
正如您在表单2中看到的那样,我无法想象必须在表B中为每个步骤创建30个单选按钮和22个文本框字段。对于采取何种方向的任何建议都非常感谢。
编辑:我知道这个问题令人困惑,我道歉我很困惑!基本上我只想存储与唯一ID相关的10个步骤。因此,当我对ID 1进行查询时,它会显示与该ID相关联的10个步骤。
使用:
Visual Studio Pro 2010
SQL Express 2008
LINQ用于查询数据库。
答案 0 :(得分:1)
正如你在表格2中看到的那样,我无法想象必须创建30个收音机 表B中的按钮和22个文本框字段用于每个步骤
从表单中,您似乎需要(可能)表B中的5个字段。
1) QuestionID (int, foreign key)
2) Answer1 (n/a textbox)
3) Answer2 (radiobutton selection)
4) Answer3 (txt)
5) Answer4 (txt)
然后,您需要一个查询表来解决您的问题 - 表C.
1) QuestionID (int, primary key)
2) Question Text (txt)
这听起来像是一个数据库设计问题,而不是c#/ Sql-server-2008问题...除非我误读它。
答案 1 :(得分:1)
您可以添加表C来存储答案。表B将有一个ID字段,表C将使用它来识别表B中的相关记录。
表B:
ID, ...
1 , ...
2 , ...
表C
ID, questionID, Answer
1 , 1 , "value"
2 , 1 , "value"
3 , 1 , "value"
...
10, 2 , "value"
11, 2 , "value"
questionID 字段是与表B的关系,您可以通过 ID 字段确定答案顺序