diff --git a/reading-platform-java/src/main/java/com/reading/platform/entity/BaseEntity.java b/reading-platform-java/src/main/java/com/reading/platform/entity/BaseEntity.java index 56d7fb0..09dc5f7 100644 --- a/reading-platform-java/src/main/java/com/reading/platform/entity/BaseEntity.java +++ b/reading-platform-java/src/main/java/com/reading/platform/entity/BaseEntity.java @@ -23,10 +23,10 @@ import java.time.LocalDateTime; public abstract class BaseEntity { /** - * 主键 ID(雪花算法生成) + * 主键 ID(数据库自增) */ @Schema(description = "主键 ID") - @TableId(type = IdType.ASSIGN_ID) + @TableId(type = IdType.AUTO) private Long id; /** diff --git a/reading-platform-java/src/main/resources/db/migration/V11__change_id_to_auto_increment.sql b/reading-platform-java/src/main/resources/db/migration/V11__change_id_to_auto_increment.sql new file mode 100644 index 0000000..b5b43a3 --- /dev/null +++ b/reading-platform-java/src/main/resources/db/migration/V11__change_id_to_auto_increment.sql @@ -0,0 +1,237 @@ +-- ===================================================== +-- 幼儿园阅读平台数据库迁移脚本 +-- 版本:V11 +-- 创建时间:2026-03-16 +-- 描述:将所有表的 id 列改为数据库自增 +-- ===================================================== + +-- 说明:由于 MySQL 不支持直接修改现有列为自增, +-- 需要重建每张表的 id 列 + +-- ----------------------------------------------------- +-- 1. 管理员用户表 (admin_user) +-- ----------------------------------------------------- +ALTER TABLE `admin_user` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 2. 租户表 (tenant) +-- ----------------------------------------------------- +ALTER TABLE `tenant` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 3. 教师表 (teacher) +-- ----------------------------------------------------- +ALTER TABLE `teacher` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 4. 学生表 (student) +-- ----------------------------------------------------- +ALTER TABLE `student` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 5. 家长表 (parent) +-- ----------------------------------------------------- +ALTER TABLE `parent` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 6. 班级表 (clazz) +-- ----------------------------------------------------- +ALTER TABLE `clazz` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 7. 班级教师关联表 (class_teacher) +-- ----------------------------------------------------- +ALTER TABLE `class_teacher` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 8. 课程表 (course) +-- ----------------------------------------------------- +ALTER TABLE `course` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 9. 课程套餐表 (course_package) +-- ----------------------------------------------------- +ALTER TABLE `course_package` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 10. 套餐课程关联表 (course_package_course) +-- ----------------------------------------------------- +ALTER TABLE `course_package_course` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 11. 主题表 (theme) +-- ----------------------------------------------------- +ALTER TABLE `theme` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 12. 标签表 (tag) +-- ----------------------------------------------------- +ALTER TABLE `tag` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 13. 课程版本表 (course_version) +-- ----------------------------------------------------- +ALTER TABLE `course_version` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 14. 课程资源表 (course_resource) +-- ----------------------------------------------------- +ALTER TABLE `course_resource` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 15. 课程脚本表 (course_script) +-- ----------------------------------------------------- +ALTER TABLE `course_script` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 16. 课程脚本页面表 (course_script_page) +-- ----------------------------------------------------- +ALTER TABLE `course_script_page` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 17. 课程活动表 (course_activity) +-- ----------------------------------------------------- +ALTER TABLE `course_activity` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 18. 课程课时表 (course_lesson) +-- ----------------------------------------------------- +ALTER TABLE `course_lesson` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 19. 课时步骤表 (lesson_step) +-- ----------------------------------------------------- +ALTER TABLE `lesson_step` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 20. 课时步骤资源表 (lesson_step_resource) +-- ----------------------------------------------------- +ALTER TABLE `lesson_step_resource` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 21. 课时反馈表 (lesson_feedback) +-- ----------------------------------------------------- +ALTER TABLE `lesson_feedback` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 22. 任务表 (task) +-- ----------------------------------------------------- +ALTER TABLE `task` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 23. 任务完成表 (task_completion) +-- ----------------------------------------------------- +ALTER TABLE `task_completion` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 24. 任务目标表 (task_target) +-- ----------------------------------------------------- +ALTER TABLE `task_target` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 25. 任务模板表 (task_template) +-- ----------------------------------------------------- +ALTER TABLE `task_template` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 26. 成长记录表 (growth_record) +-- ----------------------------------------------------- +ALTER TABLE `growth_record` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 27. 通知表 (notification) +-- ----------------------------------------------------- +ALTER TABLE `notification` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 28. 家长学生关联表 (parent_student) +-- ----------------------------------------------------- +ALTER TABLE `parent_student` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 29. 学生班级历史表 (student_class_history) +-- ----------------------------------------------------- +ALTER TABLE `student_class_history` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 30. 学生记录表 (student_record) +-- ----------------------------------------------------- +ALTER TABLE `student_record` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 31. 租户课程表 (tenant_course) +-- ----------------------------------------------------- +ALTER TABLE `tenant_course` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 32. 租户套餐表 (tenant_package) +-- ----------------------------------------------------- +ALTER TABLE `tenant_package` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 33. 系统设置表 (system_setting) +-- ----------------------------------------------------- +ALTER TABLE `system_setting` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 34. 排课模板表 (schedule_template) +-- ----------------------------------------------------- +ALTER TABLE `schedule_template` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 35. 排课计划表 (schedule_plan) +-- ----------------------------------------------------- +ALTER TABLE `schedule_plan` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 36. 资源库表 (resource_library) +-- ----------------------------------------------------- +ALTER TABLE `resource_library` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 37. 资源项表 (resource_item) +-- ----------------------------------------------------- +ALTER TABLE `resource_item` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID'; + +-- ----------------------------------------------------- +-- 38. 操作日志表 (operation_log) +-- ----------------------------------------------------- +ALTER TABLE `operation_log` + MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键 ID';