SQL文件说明.md 7.7 KB

数据库 SQL 文件目录说明

📁 文件结构概览

基于业务域的数据库文件拆分,采用目录+文件的组织方式,将原始的 hzdyjs_xg.sql 按业务模块进行分类,便于管理和维护。

docs/设计文档/database/
├── hzdyjs_xg.sql                    # 完整数据库文件(保留)
├── README.md                        # 数据库设计说明
├── mysql-database-standard.md       # MySQL数据库建设规范
├── database_msg.md                  # 数据库环境配置
├── SQL文件说明.md                   # 本文件
├── 工作流/                          # 工作流模块相关SQL
│   └── ... (工作流相关SQL文件)
├── 后勤管理/                        # 后勤管理模块相关SQL
│   └── ... (后勤管理相关SQL文件)
├── 学工管理-学生信息管理/           # 学工管理-学生信息模块相关SQL
│   └── ... (学生信息相关SQL文件)
└── 学工管理-宿舍管理/               # 学工管理-宿舍管理模块相关SQL
    └── ... (宿舍管理相关SQL文件)

📊 业务域拆分详情

工作流模块 (工作流/)

业务域: 工作流引擎相关功能
包含表: 8 张表

  • flow_category - 流程分类表
  • flow_definition - 流程定义表
  • flow_his_task - 历史任务表
  • flow_instance - 流程实例表
  • flow_node - 流程节点表
  • flow_skip - 流程跳转表
  • flow_task - 流程任务表
  • flow_user - 流程用户表

主要功能: 支持业务流程的定义、执行、跟踪和管理

后勤管理模块 (后勤管理/)

业务域: 后勤服务管理相关功能
包含表: 10+ 张表

报告厅预约管理子模块

  • hq_hall_info - 报告厅信息表
  • hq_hall_reservation - 报告厅预约表

满意度调查子模块

  • hq_sat_answer - 答题答案表
  • hq_sat_category - 题目分类表
  • hq_sat_detail - 答题详情表
  • hq_sat_option - 评分选项表
  • hq_sat_question - 题库表
  • hq_sat_record - 答题记录表
  • hq_sat_survey - 问卷表
  • hq_sat_survey_question - 问卷题目关联表

主要功能: 校园后勤服务管理,包括场地预约和满意度调查

学工管理-学生信息管理模块 (学工管理-学生信息管理/)

业务域: 学工管理-学生信息管理相关功能
包含表: 相关学生信息表

主要功能: 学生信息管理,包括学生基本信息、班级信息等

学工管理-宿舍管理模块 (学工管理-宿舍管理/)

业务域: 学工管理-宿舍管理相关功能
包含表: 宿舍相关表

主要功能: 宿舍管理,包括宿舍分配、宿舍管理等功能

其他模块 (仍保留在根目录)

代码生成模块 (02-code-generator-module.sql)

业务域: 代码生成器相关功能
包含表: 2 张表

  • gen_table - 代码生成业务表
  • gen_table_column - 代码生成业务字段表

主要功能: 支持基于数据库表结构自动生成代码

任务调度模块 (04-job-scheduler-module.sql)

业务域: SnailJob 任务调度相关功能
包含表: 12 张表

主要功能: 分布式任务调度、重试机制、工作流编排

系统管理模块 (05-system-management-module.sql)

业务域: 系统核心管理功能
包含表: 21 张表

主要功能: 系统用户管理、权限控制、配置管理、日志记录等核心功能

测试模块 (06-test-module.sql)

业务域: 测试和演示相关功能
包含表: 1 张表

主要功能: 系统功能测试和演示,包含树形结构数据


🔧 使用指南

完整数据库部署

-- 执行完整数据库文件
SOURCE docs/设计文档/database/hzdyjs_xg.sql;

按模块部署

现在可以按照目录组织更灵活地部署数据库:

-- 核心系统模块
SOURCE docs/设计文档/database/05-system-management-module.sql;

-- 按业务目录部署
-- 工作流模块
SOURCE docs/设计文档/database/工作流/01-workflow-module.sql;

-- 后勤管理模块
SOURCE docs/设计文档/database/后勤管理/03-logistics-module.sql;
SOURCE docs/设计文档/database/后勤管理/hq_hall_info.sql;
SOURCE docs/设计文档/database/后勤管理/hq_satisfaction_survey.sql;
-- 更多后勤管理相关表...

-- 学工管理-学生信息模块 
-- 更多学生信息相关表...

-- 学工管理-宿舍管理模块
SOURCE docs/设计文档/database/学工管理-宿舍管理/xg_dormitory_info.sql;
-- 更多宿舍管理相关表...

开发环境部署建议

  1. 必须模块: 系统管理模块, 工作流模块
  2. 核心业务模块: 后勤管理模块
  3. 按需模块: 学工管理相关模块和其他模块根据具体业务需求选择性部署
  4. 测试模块: 仅在开发和测试环境中部署

⚠️ 注意事项

1. 目录组织原则

  • 按业务域组织: 文件按业务功能模块存放到对应目录
  • 一表一文件: 每个表结构单独存放为独立SQL文件,便于维护
  • 统一命名: 文件名应与表名保持一致,便于快速定位

2. 数据一致性

  • 所有模块都遵循统一的数据库设计规范
  • 使用逻辑删除,不进行物理删除
  • 统一的基础字段结构和索引设计
  • 不使用数据库外键约束,关联关系通过应用层维护

3. 版本管理

  • 拆分后的 SQL 文件保持与 hzdyjs_xg.sql 的内容一致性
  • 任何表结构变更都应同步更新对应的模块文件
  • 建议使用版本控制跟踪 SQL 文件的变更历史

4. 性能考虑

  • 每个模块都包含合理的索引设计
  • 支持分模块的数据库备份和恢复
  • 便于数据库性能调优和问题排查

🔄 维护说明

更新流程

  1. 修改对应业务目录下的SQL文件
  2. 如有必要,同步更新 hzdyjs_xg.sql 主文件
  3. 更新本说明文档的变更记录
  4. 在 docs/变更管理/code-adjust-record-YYYY-MM-DD-{username}.md 中记录变更

文件命名规则

  • 使用表名作为文件名,如 xg_student_msg.sql
  • 可选使用两位数字前缀进行排序
  • 使用英文短横线分隔词语
  • 以 .sql 结尾

拆分原则

  • 按业务域进行目录分组
  • 保持模块的相对独立性
  • 考虑实际部署和维护需求
  • 遵循数据库设计规范

📋 更新记录

2025-07-15 - 目录结构调整

变更内容:

  • 将SQL文件按业务域进行目录拆分
  • 新增学工管理-学生信息管理目录
  • 新增工作流目录
  • 新增后勤管理目录
  • 新增学工管理-宿舍管理目录
  • 更新SQL文件说明文档,反映新的目录结构

变更原因: 优化数据库文件管理,按业务模块分类存储,提高可维护性

影响范围: 仅影响文件组织方式,不影响SQL内容和功能

执行状态: ✅ 已完成并验证通过

2025-01-09 - 学工管理模块完全删除

变更内容:

  • 删除学工管理模块相关的所有文件和数据
  • 新增08-student-management-actual-rollback.sql实际删除脚本
  • 实际执行数据库删除操作,清理所有相关数据
  • 更新文档说明,标记该模块为已删除状态
  • 调整统计信息(总表数量:64→54)

实际删除数据:

  • 6张数据库表(xg_student_info、xg_student_bank_info、xg_class_info等)
  • 16个菜单权限项(包含雪花ID菜单)
  • 7个字典类型(性别、学籍状态、政治面貌等)
  • 27个字典数据项

变更原因: 用户要求删除已创建的学工学生信息相关功能

影响范围: 不影响其他模块功能,系统已恢复到未实施学工管理模块前状态

执行状态: ✅ 已完成并验证通过