-
Notifications
You must be signed in to change notification settings - Fork 0
jzw edited this page Nov 16, 2012
·
9 revisions
习题库是系统的核心表,记录各类学科的习题。 为了便于用户快速定位到自己寻找的习题,需要对习题进行分类,快速检索习题。
可考虑是否需要引入搜索引擎
随着资源类型的增多,如习题,讲义,教学视频,可将此表提取为一张资源表。
DRIP_EXERCISE 习题(使用git跟踪习题内容的变化)
在习题中使用什么作为填空题的占位符?
列名 | 列描述 | 列类型 | 列长度 | 默认值 | 描述 |
DBID | 主键标识 | int | 自增 | ||
CONTENT | 习题内容(支持引入图片) | text | |||
EXER_TYPE | 题型 | char | 2 | 单选、多选、填空、判断、问答和综合题等 | |
EXER_CATEGORY | 习题所属学科 | char | 10 | (暂时将长度设为10) | |
CRT_TM | 创建时间 | datetime | now() | ||
CRT_USER_ID | 创建人标识 | bigint | |||
UPT_TM | 修改时间 | datetime | now() | ||
UPT_USER_ID | 修改人标识 | bigint | |||
WATCH_COUNT | 被关注次数 | int | 0 | 派生字段 | |
FAVORITE_COUNT | 被收藏次数 | int | 0 | 派生字段 | |
ANSWER_COUNT | 被解答次数 | int | 0 | 派生字段 |
DRIP_EXER_OPTION 习题选项,用于选择题,完型填空题等
习题与选项之间的关系:1对n
列名 | 列描述 | 列类型 | 列长度 |
DBID | 主键标识 | int | |
EXER_ID | 习题标识 | int | |
CONTENT | 选项的内容,如果是完型填空题则为空 | text | |
OPT_SEQ | 选项的排序 | int | 2 |
DRIP_ANSWER 习题答案表
题目与答案之间的关系:1对n
答案与选项之间的关系:1对1
答案与用户之间的关系:1对n
列名 | 列描述 | 列类型 | 列长度 | 默认值 | 描述 |
DBID | 主键标识 | int | 自增 | ||
EXER_ID | 习题标识 | int | |||
GUIDE | 答题解析 | text | 答题思路 | ||
CRT_TM | 创建时间 | datetime | |||
CRT_USER_ID | 创建人标识 | bigint | |||
UPT_TM | 修改时间 | datetime | |||
UPT_USER_ID | 修改人标识 | bigint | |||
COMMENT_COUNT | 被评论次数 | int | 0 | 派生字段 |
DRIP_ANSWER_DETAIL 用文本格式存储的答案
列名 | 列描述 | 列类型 | 列长度 |
DBID | 主键标识 | int | |
ANSWER_ID | 答案标识 | int | |
OPT_ID | 答案选项标识,用于完型填空。如果没有选项,则为null | int | |
CONTENT | 文本答案 (注意,答案中也可能需要附图), 完型填空等,如果没有则为null | text |
注意OPT_ID与CONTENT之间的组合:
- 如果是选择题,则只填OPT_ID;
- 如果是完型填空题,则OPT_ID为位置标识,CONTENT为指定位置的答案
- 如果是问答题,则只填写CONTENT
- 如果是判断题,则只填写OPT_ID,因为通常判断题的OPTION都是固定的,需要特殊处理。
DRIP_EXER_GUIDE 习题解析
习题与习题解析之间的关系:1对1
习题解析与用户之间的关系:1对n
注意:习题与答案之间的关系是1对0到n,而习题与习题解析之间的关系是1对1。
列名 | 列描述 | 列类型 | 列长度 |
DBID | 主键标识 | int | |
EXER_ID | 习题标识 | int | |
CONTENT | 习题解析内容 | text | |
CRT_TM | 创建时间 | datetime | |
CRT_USER_ID | 创建人标识 | bigint | |
UPT_TM | 修改时间 | datetime | |
UPT_USER_ID | 修改人标识 | bigint |