数据库设计 – 多选测验引擎的数据库模式的优秀设计是什么?
发布时间:2020-12-12 07:07:27 所属栏目:MsSql教程 来源:网络整理
导读:我有一个项目来创建一个asp.net mvc网站来生成一个测验. 这是规范: 对于访问该网站的每个用户,她/他都会得到一个测验. 每个测验都包含一些多项选择问题. 每个问题都包含一个问题和5个相互排斥的选择. 我能想到的最简单的模型如下: public class Problem { p
我有一个项目来创建一个asp.net mvc网站来生成一个测验.
这是规范: >对于访问该网站的每个用户,她/他都会得到一个测验. 我能想到的最简单的模型如下: public class Problem { public int ProblemId { get; set; } public string Question { get; set; } public string A { get; set; } public string B { get; set; } public string C { get; set; } public string D { get; set; } public string E { get; set; } } 我不确定它是好的. 解决方法简单直观的设计总是最好的,因为它们非常简单,我们开始怀疑自己;-).你做得很好,除了你也可以用问题本身存储正确的答案.然后它不再仅仅是一个问题.所以现在是ProblemAndAnswer或QuizItem.所以这可以作为多列存储在单个表中.但你还需要了解它的含义.这意味着您假设一个问题总是有5个选择.如果你的数量少于5,则可以存储空值.但如果你想要更多呢?这是单表模型开始分崩离析的时候.你现在开始认为一个问题真的可以有一个或多个选择,并且想要分成父子表…现在你做出了明智的决定;-) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- sqlserver启用xm_cmdshell
- sql-server – 执行计划显示昂贵的CONVERT_IMPLICIT操作.我
- sql-server-2008 – 使用PIVOT SQL Server 2008时更改列名
- CSharp基础起步第十九期---SqlServer 基础07(连接查询)
- 如何在UUID之间进行选择,自动增量/序列键和数据库主键的顺序
- 教你如何用Lumigent 4.1 工具查看SQLServer2000 SQLServer
- Redis的使用模式之计数器模式实例
- 如何在SQL中使用NOT EXISTS和COMPOSITE KEYS从POJO插入数据
- 十六招成为大型软件项目的开发英雄
- SQL Server 按日期选择最晚日期与最早日期对应的数的差值