我想制作网络应用,用户可以在其中创建带问题的问答,其他用户可以填写答案。答案可以是不同类型:文本,数字,日期,查找等。 Stackoverflow的用户使用“Pepto”来帮助我选择构建我的数据库(DataBase design for store anketing data)的方式。
方法是将anketa答案保存为答案表中的行。例如(表格设计):
TABLE AnketaField
Id uniqueidentifier PK
AnketaId uniqueidentifier FK to anketa table
Name varchar field name
Type varchar field type (string, int, datetime)
TABLE AnketaFieldValue
Id uniqueidentifier PK
AnketaFieldId uniqueidentifier FK to AnketaField table
Value varchar value in string (cast to true type if need)
我认为,如果我使用这种设计,在选择数据和制作报告时会出现问题。有很多加入。 也许有人知道替代方式,或者如何构建这种类型的系统(我的意思是不同的属性数量)。
我将不胜感激!感谢...