-- ============================================================= -- 数据库迁移脚本:question 表补充缺失列 -- 版本: V1.1 -- 日期: 2026-06-08 -- 说明: question表缺少 exclude_stems 和 is_deleted 列, -- 导致 MyBatis-Plus 全字段查询时抛出 SQL 异常 -- (Unknown column 'exclude_stems' / 'is_deleted') -- 对应实体字段: Question.excludeStems, Question.isDeleted -- ============================================================= -- 1. 添加 exclude_stems 列(对应实体 field: excludeStems) -- 用于 AI 出题时对题干内容进行去重 ALTER TABLE `question` ADD COLUMN `exclude_stems` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '题干内容,用于AI去重' AFTER `document_id`; -- 2. 添加 is_deleted 列(对应实体 field: isDeleted) -- 用于逻辑删除标记 ALTER TABLE `question` ADD COLUMN `is_deleted` int NOT NULL DEFAULT 0 COMMENT '软删除标志:0表示正常,1表示已删除' AFTER `updated_at`; -- 3. 为 is_deleted 添加索引(优化按删除状态查询的性能) ALTER TABLE `question` ADD INDEX `idx_question_is_deleted`(`is_deleted` ASC) USING BTREE; -- ============================================================= -- 回滚脚本(如需回滚请执行以下语句) -- ============================================================= -- ALTER TABLE `question` DROP COLUMN `exclude_stems`; -- ALTER TABLE `question` DROP COLUMN `is_deleted`; -- ALTER TABLE `question` DROP INDEX `idx_question_is_deleted`;