我需要创建一个调查,其中答案存储在数据库中.我只是想知道在数据库中实现这个的最佳方法是什么,特别是所需的表.调查包含不同类型的问题.例如:注释的文本字段,多项选择题以及可能包含多个答案的问题(即检查所有适用的答案).
我想出了两个可能的解决方案:
创建一个包含每个调查提交答案的巨型表格.每列将对应于调查的答案.即SurveyID,Answer1,Answer2,Answer3
我不认为这是最好的方法,因为在这项调查中有很多问题,如果调查要改变,似乎不是很灵活.
我想到的另一件事是创建一个问题表和答案表.问题表将包含调查的所有问题.答案表将包含调查中的各个答案,每行都与一个问题相关联.
一个简单的例子:
tblSurvey:SurveyID
tblQuestion:QuestionID,SurveyID,QuestionType,Question
tblAnswer:AnswerID,UserID,QuestionID,Answer
tblUser:UserID,UserName
我的问题是,可能有大量的答案会使答案表变得非常庞大.在性能方面,我不确定它是如此之大.
我很感激任何想法和建议.
我有点得到关于此的混合信息所以我希望有人可以为我清除这一点.
我是否应该在以下情况下使用共享方法/功能:
我有一个名为"Person"的泛型类.此类表示数据库中的人员.
我有一个名为"PersonManager"的经理类.此类包含添加,更新,删除单个Person对象的方法.还存在从数据库中查找人员的方法.
是否应将manager类中的这些方法声明为共享方法?或者更适合每次创建PersonManager类的新实例并在其上调用适当的方法.
所以,如果共享:
PersonManager.AddPerson(NewPerson)
Run Code Online (Sandbox Code Playgroud)
与非共享:
Dim MyPersonManager as PersonManager
MyPersonManager.AddPerson(NewPerson)
Run Code Online (Sandbox Code Playgroud)
查找人员时,共享版本将是:
Dim dt as New DataTable
dt = PersonManager.GetPersons
Run Code Online (Sandbox Code Playgroud)
与非共享版本:
Dim dt as New DataTable
Dim MyPersonManager as New PersonManager
dt = MyPersonManager.GetPersons
Run Code Online (Sandbox Code Playgroud) 我需要做的是获得与当前类型不同的下一个元素.我不确定这是否有意义.据我所知,jQuery中的next()只能获得下一个兄弟.
这就是我所拥有的:
<tr>
<td>
<a>Link</a>
</td>
</tr>
<tr>
<td>
<div class="A">
<div class="B">...</div>
<div class="B">...</div>
<div class="B">...</div>
</div>
</td>
</tr>
<tr>
<td>
<a>Link</a>
</td>
</tr>
<tr>
<td>
<div class="A">
<div class="B">...</div>
<div class="B">...</div>
<div class="B">...</div>
</div>
</td>
</tr>
Run Code Online (Sandbox Code Playgroud)
点击链接后,我想对div.A中的div.B做一些事情.但只有第一个div.A在链接之后,而不是页面其余部分.更具体地说,我正在尝试做的是设置它,以便单击链接将显示或隐藏div.B's.
这是可行的还是可行的?这会是一个问题吗?
我不是一个jQuery专家,所以我现在只是搞乱它.