我正在为慈善学生组织申请。该应用程序将跟踪(主要)学生参加活动的参与和筹款。我们要做的事情之一是从我们的企业目录中收集一些关于注册该活动的学生的人口统计信息,以用于评估营销,并为年度,专业,大学等的学生参与管理部门构建报告。该项目的目标之一是将应用程序推广到其他大学的类似组织。我正在设计一个带有插件架构的应用程序,用于身份验证和目录访问,使其更加通用。
到目前为止,我已经提出了几种不同的方法来将人口统计信息存储在数据库中。我可以假设大多数大学都希望收集(并提供相关信息来源)类似的人口统计信息。在这种情况下,我可以在注册表的列中保留人口统计信息的适当部分(每年更改的内容),其余部分在参与者表中(对于个人而言是不变的)。或者,我考虑保留一个人口统计表,其中包含每个注册和所需属性的注册ID,属性,值三元组。我认为第一个选项更容易查询报告,而第二个选项更灵活。
我想知道是否有其他替代品我没有考虑过。或者,如果您遇到类似的问题,您是如何处理它的(以及您对结果的满意度)?
答案 0 :(得分:1)
以下是我的想法:
答案 1 :(得分:0)
如果你编写代码的方式是添加列不会破坏它(或者很容易更新),例如小心SELECT *并在INSERT中指定列,那么从你的描述中它不会听起来你需要属性值的超灵活性,所以我坚持使用选项1。