type
status
date
slug
summary
tags
category
icon
password
表 9 用户表 (t_user)
用户表存储系统所有用户(包括考生和管理员)的基本信息。
字段名 | 数据类型 | 是否允许NULL | 是否唯一 | 主键 | 外键 | 关联表(字段) | 字段描述 |
id | BIGINT | 否 | 是 | 是 | 否 | - | 用户唯一标识符 |
username | VARCHAR(50) | 否 | 是 | 否 | 否 | - | 用户名,用于登录 |
password | VARCHAR(100) | 否 | 否 | 否 | 否 | - | 密码(存储加密后的) |
real_name | VARCHAR(50) | 是 | 否 | 否 | 否 | - | 真实姓名 |
email | VARCHAR(100) | 是 | 否 | 否 | 否 | - | 邮箱地址 |
phone | VARCHAR(20) | 是 | 否 | 否 | 否 | - | 电话号码 |
status | TINYINT | 否 | 否 | 否 | 否 | - | 用户状态 (例如: 1-正常, 0-禁用) |
department_id | BIGINT | 是 | 否 | 否 | 是 | t_department(id) | 所属部门ID |
create_time | DATETIME | 否 | 否 | 否 | 否 | - | 用户创建时间 |
update_time | DATETIME | 否 | 否 | 否 | 否 | - | 用户信息更新时间 |
表 10 角色表 (t_role)
角色表存储系统中的角色信息,用于权限管理。
字段名 | 数据类型 | 是否允许NULL | 是否唯一 | 主键 | 外键 | 关联表(字段) | 字段描述 |
id | BIGINT | 否 | 是 | 是 | 否 | - | 角色唯一标识符 |
name | VARCHAR(50) | 否 | 否 | 否 | 否 | - | 角色名称 |
code | VARCHAR(50) | 否 | 是 | 否 | 否 | - | 角色代码(唯一) |
description | VARCHAR(200) | 是 | 否 | 否 | 否 | - | 角色描述 |
create_time | DATETIME | 否 | 否 | 否 | 否 | - | 角色创建时间 |
update_time | DATETIME | 否 | 否 | 否 | 否 | - | 角色信息更新时间 |
表 11 用户角色关联表 (t_user_role)
用户角色关联表用于实现用户与角色的多对多关系。
字段名 | 数据类型 | 是否允许NULL | 是否唯一 | 主键 | 外键 | 关联表(字段) | 字段描述 |
user_id | BIGINT | 否 | 否 | 是 | 是 | t_user(id) | 用户ID |
role_id | BIGINT | 否 | 否 | 是 | 是 | t_role(id) | 角色ID |
表 12 部门表 (t_department)
部门表存储组织结构中的部门信息。
字段名 | 数据类型 | 是否允许NULL | 是否唯一 | 主键 | 外键 | 关联表(字段) | 字段描述 |
id | BIGINT | 否 | 是 | 是 | 否 | - | 部门唯一标识符 |
name | VARCHAR(50) | 否 | 否 | 否 | 否 | - | 部门名称 |
code | VARCHAR(50) | 否 | 是 | 否 | 否 | - | 部门代码(唯一) |
parent_id | BIGINT | 是 | 否 | 否 | 是 | t_department(id) | 父级部门ID |
create_time | DATETIME | 否 | 否 | 否 | 否 | - | 部门创建时间 |
update_time | DATETIME | 否 | 否 | 否 | 否 | - | 部门信息更新时间 |
表 13 题库表 (t_question_bank)
题库表存储试题库的基本信息。
字段名 | 数据类型 | 是否允许NULL | 是否唯一 | 主键 | 外键 | 关联表(字段) | 字段描述 |
id | BIGINT | 否 | 是 | 是 | 否 | - | 题库唯一标识符 |
name | VARCHAR(100) | 否 | 否 | 否 | 否 | - | 题库名称 |
description | TEXT | 是 | 否 | 否 | 否 | - | 题库描述 |
question_count | INT | 否 | 否 | 否 | 否 | - | 题库包含的试题数量 |
create_time | DATETIME | 否 | 否 | 否 | 否 | - | 题库创建时间 |
update_time | DATETIME | 否 | 否 | 否 | 否 | - | 题库信息更新时间 |
表 14 试题表 (t_question)
试题表存储具体的试题内容和属性。
字段名 | 数据类型 | 是否允许NULL | 是否唯一 | 主键 | 外键 | 关联表(字段) | 字段描述 |
id | BIGINT | 否 | 是 | 是 | 否 | - | 试题唯一标识符 |
content | TEXT | 否 | 否 | 否 | 否 | - | 题干内容 |
type | TINYINT | 否 | 否 | 否 | 否 | - | 题型 (例如: 1-单选, 2-多选, 3-判断) |
difficulty | TINYINT | 是 | 否 | 否 | 否 | - | 难度级别 |
score | INT | 否 | 否 | 否 | 否 | - | 题目默认分值 |
bank_id | BIGINT | 否 | 否 | 否 | 是 | t_question_bank(id) | 所属题库ID |
create_time | DATETIME | 否 | 否 | 否 | 否 | - | 试题创建时间 |
update_time | DATETIME | 否 | 否 | 否 | 否 | - | 试题信息更新时间 |
表 15 考试表 (t_exam)
考试表存储具体的考试活动信息。
字段名 | 数据类型 | 是否允许NULL | 是否唯一 | 主键 | 外键 | 关联表(字段) | 字段描述 |
id | BIGINT | 否 | 是 | 是 | 否 | - | 考试唯一标识符 |
title | VARCHAR(200) | 否 | 否 | 否 | 否 | - | 考试标题 |
start_time | DATETIME | 否 | 否 | 否 | 否 | - | 考试开始时间 |
end_time | DATETIME | 否 | 否 | 否 | 否 | - | 考试结束时间 |
time_limit | INT | 否 | 否 | 否 | 否 | - | 考试时长(分钟) |
total_score | INT | 否 | 否 | 否 | 否 | - | 考试总分 |
status | TINYINT | 否 | 否 | 否 | 否 | - | 考试状态 |
create_time | DATETIME | 否 | 否 | 否 | 否 | - | 考试创建时间 |
update_time | DATETIME | 否 | 否 | 否 | 否 | - | 考试信息更新时间 |
表 16 试卷表 (t_exam_paper)
试卷表存储与考试关联的试卷信息。
字段名 | 数据类型 | 是否允许NULL | 是否唯一 | 主键 | 外键 | 关联表(字段) | 字段描述 |
id | BIGINT | 否 | 是 | 是 | 否 | - | 试卷唯一标识符 |
exam_id | BIGINT | 否 | 否 | 否 | 是 | t_exam(id) | 关联考试ID |
total_score | INT | 否 | 否 | 否 | 否 | - | 试卷总分 |
create_time | DATETIME | 否 | 否 | 否 | 否 | - | 试卷创建时间 |
update_time | DATETIME | 否 | 否 | 否 | 否 | - | 试卷信息更新时间 |
表 17 试卷试题关联表 (t_paper_question)
试卷试题关联表用于实现试卷与试题的多对多关系,并存储试题在特定试卷中的分值。
字段名 | 数据类型 | 是否允许NULL | 是否唯一 | 主键 | 外键 | 关联表(字段) | 字段描述 |
paper_id | BIGINT | 否 | 否 | 是 | 是 | t_exam_paper(id) | 试卷ID |
question_id | BIGINT | 否 | 否 | 是 | 是 | t_question(id) | 试题ID |
score | INT | 否 | 否 | 否 | 否 | - | 试题在当前试卷中的分值 |
表 18 考试记录表 (t_exam_record)
考试记录表存储考生参与每次考试的详细记录。
字段名 | 数据类型 | 是否允许NULL | 是否唯一 | 主键 | 外键 | 关联表(字段) | 字段描述 |
id | BIGINT | 否 | 是 | 是 | 否 | - | 记录唯一标识符 |
user_id | BIGINT | 否 | 否 | 否 | 是 | t_user(id) | 考生用户ID |
exam_id | BIGINT | 否 | 否 | 否 | 是 | t_exam(id) | 关联考试ID |
score | INT | 是 | 否 | 否 | 否 | - | 考生得分(阅卷后) |
submit_time | DATETIME | 是 | 否 | 否 | 否 | - | 试卷提交时间 |
create_time | DATETIME | 否 | 否 | 否 | 否 | - | 记录创建时间(考试开始时间) |
update_time | DATETIME | 否 | 否 | 否 | 否 | - | 记录更新时间 |
表 19 权限表 (t_permission)
权限表存储系统中的权限信息。
字段名 | 数据类型 | 是否允许NULL | 是否唯一 | 主键 | 外键 | 关联表(字段) | 字段描述 |
id | BIGINT | 否 | 是 | 是 | 否 | - | 权限唯一标识符 |
name | VARCHAR(50) | 否 | 否 | 否 | 否 | - | 权限名称 |
code | VARCHAR(50) | 否 | 是 | 否 | 否 | - | 权限代码(唯一) |
description | VARCHAR(200) | 是 | 否 | 否 | 否 | - | 权限描述 |
create_time | DATETIME | 否 | 否 | 否 | 否 | - | 权限创建时间 |
update_time | DATETIME | 否 | 否 | 否 | 否 | - | 权限信息更新时间 |
表 20 角色权限关联表 (t_role_permission)
角色权限关联表用于实现角色与权限的多对多关系。
字段名 | 数据类型 | 是否允许NULL | 是否唯一 | 主键 | 外键 | 关联表(字段) | 字段描述 |
role_id | BIGINT | 否 | 否 | 是 | 是 | t_role(id) | 角色ID |
permission_id | BIGINT | 否 | 否 | 是 | 是 | t_permission(id) | 权限ID |
这些表格详细列出了每个数据表的字段、数据类型、约束和描述,是软件设计说明书中数据库设计部分的核心内容。
- Author:NotionNext
- URL:https://tangly1024.com/article/example-8
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!