我使用SQL Server 2008 R2来存储Web应用程序中的调查问题和答案。
出于报告性能原因,我正在研究在事务数据库之外创建数据仓库。
我需要的报告相当简单:
两种不同调查的例子:
由于每项调查都是独一无二的 - 作者可以提出他们想要的任何问题并得到明确的答案 - 将这些结果存储在典型的仓库模型中是否有意义?如果是这样,你会如何建议设计?
注意:每项调查都与自己的ID相关联。
谢谢!
答案 0 :(得分:1)
因为这是一个数据仓库,我会回答这个事实。由于您只是插入和选择,因此无需标准化。
Answer
------
Answer Text
Question Text
Survey ID
主键是(答案,问题,调查ID)。 (问题,调查ID)还有另一个独特的索引。
如果调查的日期和时间可用,我会在答案表中添加一个调查时间戳。
此表将回答以下问题。
如果您正在寻找规范化的事务数据库,那么下面的表将更合适。
Survey
------
Survey ID
...
如果没有其他调查信息,则不需要此表。
Question
--------
Question ID
Survey ID
Question Text
...
问题ID是一个自动递增的整数。调查ID是返回调查表的外键。
Answer
------
Answer ID
Question ID
Answer Text
...
答案ID是一个自动递增的整数。问题ID是返回问题表的外键。
此表设计将回答以下问题。