-- ============================================================================== -- RailwaySystem 数据库 V2 回滚脚本: 001_rollback_new_tables.sql -- 适用数据库: KingbaseES V009R003C018 (schema: public) -- 执行目标: 安全下线并删除数据库 V2 新增的 8 张培训业务表 -- 事务边界: 全程在显式事务 BEGIN ... COMMIT 中执行 -- 说明: 先显式解除外键约束,然后按依赖反序执行常规 DROP TABLE (无 CASCADE) -- ============================================================================== BEGIN; -- 步骤 1: 显式解除 V2 新增表之间的外键约束 ALTER TABLE train_student_score DROP CONSTRAINT IF EXISTS fk_score_enrollment; ALTER TABLE train_student_score DROP CONSTRAINT IF EXISTS fk_score_item; ALTER TABLE train_score_item DROP CONSTRAINT IF EXISTS fk_scoreitem_plan; ALTER TABLE train_score_item DROP CONSTRAINT IF EXISTS fk_scoreitem_plancourse; ALTER TABLE train_lesson DROP CONSTRAINT IF EXISTS fk_lesson_plancourse; ALTER TABLE train_lesson DROP CONSTRAINT IF EXISTS fk_lesson_teacher; ALTER TABLE train_lesson DROP CONSTRAINT IF EXISTS fk_lesson_classroom; ALTER TABLE train_lesson DROP CONSTRAINT IF EXISTS fk_lesson_site; ALTER TABLE train_accommodation DROP CONSTRAINT IF EXISTS fk_accomm_enrollment; ALTER TABLE train_accommodation DROP CONSTRAINT IF EXISTS fk_accomm_dorm; ALTER TABLE train_enrollment DROP CONSTRAINT IF EXISTS fk_enrollment_plan; ALTER TABLE train_enrollment DROP CONSTRAINT IF EXISTS fk_enrollment_student; ALTER TABLE train_plan_course DROP CONSTRAINT IF EXISTS fk_plancourse_plan; ALTER TABLE train_plan_course DROP CONSTRAINT IF EXISTS fk_plancourse_course; ALTER TABLE train_course_resource DROP CONSTRAINT IF EXISTS fk_cr_course; ALTER TABLE train_course_resource DROP CONSTRAINT IF EXISTS fk_cr_resource; -- 步骤 2: 按依赖拓扑反序执行常规 DROP TABLE DROP TABLE IF EXISTS train_student_score; DROP TABLE IF EXISTS train_score_item; DROP TABLE IF EXISTS train_lesson; DROP TABLE IF EXISTS train_accommodation; DROP TABLE IF EXISTS train_enrollment; DROP TABLE IF EXISTS train_plan_course; DROP TABLE IF EXISTS train_course_resource; DROP TABLE IF EXISTS train_resource; COMMIT;