- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在编写一个应用程序来为我们的位置生成检查。基本上,将它们视为健康检查表。每一次“检查”都会有一系列的问答。答案可以是数字(1,2,3,4,5 - 这将代表它们的分值),也可以是多项选择('是','否')将映射到点(1 表示是,0 表示no) 和平面文本答案,它们不会映射到点,但可能会被应用层用于平均。因此,例如,我们可以有一个“酱汁温度”字段,它不带任何分数,但可用于在路上报告。
问题可以在多个检查表上重复使用,但可以有不同的分值。答案也是如此。
我在弄清楚它的架构时遇到了问题。我的直觉告诉我 EAV 是个不错的选择,但我越想越觉得数据仓库模型会更好。
特别是,我在找出将 min_points、max_points 和 no_points 映射到每个问题/答案的最佳方法时遇到了问题。这是我认为我将不得不使用 EAV 的地方。实际上我有点卡在上面了。如果是调查之类的,没有分数,或者每个答案的分值都一样,那就很简单了。问题表、答案表、输入类型的一些样板表等等。但是由于每个问题都可能有一个分值,并且该分值可能会根据使用该问题的位置而改变,所以我不确定如何进行。
因此,示例问题如下
由于所有答案都可能有不同的数据类型和分值,我不确定如何为它们构建数据库。
我在想(为简洁起见,省略或更改了其他表、名称和其他 imp 详细信息)
CREATE TABLE IF NOT EXISTS inspection(
id mediumint(8) unsigned not null auto_increment PRIMARY KEY,
store_id mediumint(8) unsigned not null,
inspection_id mediumint(8) unsigned not null,
date_created datetime,
date_modified timestamp,
INDEX IDX_STORE(store_id),
INDEX IDX_inspection(inspection_id),
FOREIGN KEY (store_id) REFERENCES store (store_id)ON DELETE CASCADE,
FOREIGN KEY (inspection_id) REFERENCES inspection (inspection_id)ON DELETE CASCADE)
CREATE TABLE IF NOT EXISTS input_type(
input_type_id tinyint(4) unsigned not null auto_increment PRIMARY KEY,
input_type_name varchar(255),
date_created datetime,
date_modified timestamp)
CREATE TABLE IF NOT EXISTS inspection_question(
question_id mediumint(8) unsigned not null auto_increment PRIMARY KEY,
question text,
input_type_id mediumint(8),
date_created datetime,
date_modified timestamp)
CREATE TABLE IF NOT EXISTS inspection_option(
option_id,
value)
但这就是我有点卡住的地方。我不确定如何构建问题答案表来说明得分、不得分和不同的数据类型。
此外,我知道我需要商店到检查等的映射表,但我暂时将它们全部关闭,因为这对问题并不重要。
因此,我是否应该为所有可能的答案(从选项表构建或以文本形式输入)存储在该表中,然后创建一个映射表以将“答案”映射到“问题”(用于任何特定检查)并将点存储在那里?
我只是想的不对。我需要一些帮助。
最佳答案
这里没有正确或错误的答案,我只是抛出一些想法和讨论点。
我建议基本“单位”不是问题,而是问题 + 答案 type 对(例如 1-5、文本或其他)。在我看来,Was the food hot/range 1 to 5
和 Was the food hot/text description
非常不同,你会发疯试图将问题与两种(或更多)答案类型(更不用说这些答案的答案键了——暂时忽略它,我稍后再讲)。将该对称为 QnA 项。您最终可能会得到很多相似的对,但是嘿,这就是您必须要处理的。
所以你有一个 QnA 项目的“池”。它们是如何被选择使用的?特定表格(或调查问卷)是根据池中的项目构建的,还是每次填写调查问卷时随机选择的?表格是否与位置特别相关,或者表格是否可以在任何位置使用?他们在制作表格/问卷时有多挑剔? QnA 项目如何收集/相互关联和/或最终结果非常重要,除非您真的喜欢重写代码,否则您应该在开始编写代码之前解决所有问题。
给定一个已定义的 QnA 项目,您还应该有该项目的“答案键”——一种衡量给定答案(基于项目的答案类型)的方法:零、值、值 * 2,等等。这显然会因使用情况而异(问卷调查问卷?它是否根据调查问卷的呈现位置而有所不同?如果是,如何或为什么?)是否有标准化的答案键算法(总是零,总是值 * 2,等)或者这些也是非常自由的形式?确定它们的使用方式/与 QnA 项目的关联方式对于正确建模至关重要。
关于database - 带评分的检查/考试问题/答案的架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11317491/
我正在准备 SQL Server 考试 (70-431)。我有 Sybex 的书 "SQL Server 2005 - Implementation and Maintenance" .我对估计一张
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: What is the proper declaration of main? 我刚刚参加了第一次 C++
我刚刚参加了考试,被问到以下问题: Write the function body of each of the methods GenStrLen, InsertChar and StrRevers
如何通过 {exams} 包创建一个 moodle 问题,该问题至少为多项选择题打分? 我已经试过了: exams2moodle(..., mchoice = list(eval = list(neg
我正在为我们的项目进行 PAX 集成测试,我在类加载方面遇到了一些问题。 我在 PAX(使用的 karaf 容器)中部署了几个包。 karaf 启动后,我可以看到我的包和服务已启动并处于事件状态。但是
我正在尝试使用 PAX Exam 设置测试,如下所示: @ExamReactorStrategy(PerMethod.class) public class AbstractTest { @C
我正在参加过去的 Java 考试,但有一个问题一直困扰着我。 问题是:“任何构造函数显式或自动调用其父类的构造函数,父类调用其父类,依此类推类层次结构。这个过程的名称是什么? 感谢您的回答! 最佳答案
我正在准备 Java 程序员认证 (SCJP) 考试。关于异常的问题,当处理异常时,最好是处理特定的异常,如 NumberFormatException ,还是使用父级 Exception 类捕获所有
我一直在准备 SCJP,现在是 Oracle 认证专业 Java SE 程序员考试。 我很难理解所有不同的集合以及何时使用它们。我也喜欢闪存卡。因此,我尝试创建一组本质上相同的类,除了它们使用的集合之
在 MS Exam 70-536 .Net Foundation ,案例场景 1 中的第 3 章“搜索、修改和编码文本” Your organization, Northwind Traders, i
这个问题不太可能对任何 future 的访客有帮助;它只与一个较小的地理区域、一个特定的时间点或一个非常狭窄的情况相关,通常不适用于全世界的互联网受众。如需帮助使此问题更广泛适用,visit the
在MS Exam 70-536 .Net Foundation ,第1课Creating Threads中的Chapter 7“Threading”有一段文字: Be aware that becau
我正在与 exams2nops 合作R/exams 包的功能。由于我所在大学的学生注册号只有六个数字,我尝试调整了reglength exams2nops 中的选项(通常最少 7 个)功能以及nops
我的目标是使用 R/exams 和 Moodle 创建一个问题,包括在 Rmd 练习文件中生成的一些图。学生应口头描述情节,然后手动评分练习。 是否可以使用 exams2moodle为 Moodle
大家好,最近一次 MCQ 复习了我做错的答案。 函数 getSum 被定义为计算大小为 a[] 的 double 组中值的总和大小,大于给定的输入值阈值。下面显示了四个原型(prototype)定义,
我从官方 MCTS 考试 70-562 书中得到的小测试程序没有触发事件。我在 Debug模式下跟踪了计算机逻辑,它甚至没有进入我的事件,即使我已经设置好一切来处理它们。所以最大的问题是我做错了什么?
我已经开始使用 PAX-EXAM 和 Karaf 容器来测试我们的应用程序。有时,测试只是在测试方法开始之前挂起,并且始终卡在 cxf 注册 mbean 上: 正在注册 MBean org.apach
在第一版C# 70-483 Exam Ref , 示例 1-12 给出了将子任务附加到父任务的示例。我认为这是错误的,并希望有人在继续这个假设之前检查我的理解。示例中的代码如下: using Syst
我目前正在准备 Microsoft 考试 70-480。在实践测试中,我发现了以下问题,我无法解释其答案。 谁能解释为什么这是正确答案? You are developing a web page b
我正在阅读 MCTS 自定进度培训工具包(考试 70-536):Microsoft .NET Framework — 应用程序开发基础,第二版电子书。 现在我正在完成线程章节(第 7 期)。在第 2
我是一名优秀的程序员,十分优秀!