文档修正:更新导航与迁移后引用
This commit is contained in:
1 parent
f7db7b592c
commit
dd2082cc39
18 files changed
+160
-148
No files matched your search
@@ -1,7 +1,7 @@
|
||||
# RailwaySystem 数据库 V2 DDL Review Round 2 变更记录 (最终静态收尾)
|
||||
|
||||
> **修订阶段**:数据库 V2 DDL Review Round 2(最终静态收尾)
|
||||
> **最高依据**:`RailwaySystem 数据库 V2 字段设计与 Kingbase DDL 规范 V1.0.md`
|
||||
> **修订阶段**:数据库 V2 DDL Review Round 2(最终静态收尾)
|
||||
> **最高依据**:`RailwaySystem 数据库 V2 字段设计与 Kingbase DDL 规范 V1.0.md`
|
||||
> **修订目标**:解决高级技术负责人 Final Static Review 提出的 7 个核心静态问题(R2-01 ~ R2-07),使数据库 V2 DDL 达到“允许进入测试迁移”状态。
|
||||
|
||||
---
|
||||
@@ -15,8 +15,8 @@
|
||||
accommodation_status SMALLINT NOT NULL DEFAULT 1
|
||||
```
|
||||
- **修改文件**:
|
||||
- [`002_create_new_tables.sql`](file:///Users/wzb/Desktop/项目/RailwaySystem/RuoYi-Vue/sql/train/v2/002_create_new_tables.sql#L142)
|
||||
- [`010_verify.sql`](file:///Users/wzb/Desktop/项目/RailwaySystem/RuoYi-Vue/sql/train/v2/010_verify.sql)
|
||||
- [`002_create_new_tables.sql`](../../RuoYi-Vue/sql/train/v2/002_create_new_tables.sql#L142)
|
||||
- [`010_verify.sql`](../../RuoYi-Vue/sql/train/v2/010_verify.sql)
|
||||
- **修改后实现**:
|
||||
```sql
|
||||
accommodation_status SMALLINT NOT NULL DEFAULT 0
|
||||
@@ -37,9 +37,9 @@
|
||||
- `train_student_checkin.checkin_way`: `DEFAULT 1`
|
||||
- `train_class_report.verify_result`: `DEFAULT 1`
|
||||
- **修改文件**:
|
||||
- [`002_create_new_tables.sql`](file:///Users/wzb/Desktop/项目/RailwaySystem/RuoYi-Vue/sql/train/v2/002_create_new_tables.sql)
|
||||
- [`004_rebuild_business_tables.sql`](file:///Users/wzb/Desktop/项目/RailwaySystem/RuoYi-Vue/sql/train/v2/004_rebuild_business_tables.sql)
|
||||
- [`010_verify.sql`](file:///Users/wzb/Desktop/项目/RailwaySystem/RuoYi-Vue/sql/train/v2/010_verify.sql)
|
||||
- [`002_create_new_tables.sql`](../../RuoYi-Vue/sql/train/v2/002_create_new_tables.sql)
|
||||
- [`004_rebuild_business_tables.sql`](../../RuoYi-Vue/sql/train/v2/004_rebuild_business_tables.sql)
|
||||
- [`010_verify.sql`](../../RuoYi-Vue/sql/train/v2/010_verify.sql)
|
||||
- **修改后实现**:
|
||||
上述 6 个字段全部移除 `DEFAULT` 声明,仅保留 `SMALLINT NOT NULL`。`010_verify.sql` 中增加只读断言:上述字段的 `column_default` 必须全部为 `NULL`,若存在默认值当场抛异常。
|
||||
- **验证方式**:静态 grep 全局检索与 `010_verify.sql` 断言校验。
|
||||
@@ -54,9 +54,9 @@
|
||||
COMMENT ON COLUMN train_enrollment.source_type IS '进入本期培训名单的来源 (1:组织指派, 2:自主报名, 3:单位推荐, 4:统一调训)';
|
||||
```
|
||||
- **修改文件**:
|
||||
- [`002_create_new_tables.sql`](file:///Users/wzb/Desktop/项目/RailwaySystem/RuoYi-Vue/sql/train/v2/002_create_new_tables.sql#L94)
|
||||
- [`04_risk_review.md`](file:///Users/wzb/Desktop/项目/RailwaySystem/docs/database-v2/04_risk_review.md)
|
||||
- [`01_table_inventory.md`](file:///Users/wzb/Desktop/项目/RailwaySystem/docs/database-v2/01_table_inventory.md)
|
||||
- [`002_create_new_tables.sql`](../../RuoYi-Vue/sql/train/v2/002_create_new_tables.sql#L94)
|
||||
- [`04_risk_review.md`](04_risk_review.md)
|
||||
- [`01_table_inventory.md`](01_table_inventory.md)
|
||||
- **修改后实现**:
|
||||
- 注释修改为:
|
||||
```sql
|
||||
@@ -74,7 +74,7 @@
|
||||
- **问题**:原 `000_preflight.sql` 仅做了表存在性、行数和少量代表性约束判断,未能覆盖完整的 Phase 0.5 物理结构骨架,若存在“少一个正确FK + 多一个错误FK”的对冲情况可能假阳性通过。
|
||||
- **原实现**:部分抽检 + 触发器循环判断。
|
||||
- **修改文件**:
|
||||
- [`000_preflight.sql`](file:///Users/wzb/Desktop/项目/RailwaySystem/RuoYi-Vue/sql/train/v2/000_preflight.sql)
|
||||
- [`000_preflight.sql`](../../RuoYi-Vue/sql/train/v2/000_preflight.sql)
|
||||
- **修改后实现**:
|
||||
采用 CTE `VALUES(...)` 构造预期基线集合,与系统目录做全集合差集比对:
|
||||
- 14 个旧表 PK (table_name + constraint_name + column_name)
|
||||
@@ -94,7 +94,7 @@
|
||||
- **问题**:原 010 验收脚本主要核验对象名称存在性,对约束内部的具体列排序、外键删除规则、CHECK 表达式逻辑等未做定义级校验。
|
||||
- **原实现**:检查约束名称与 `count(*) = 26` 等数量判断。
|
||||
- **修改文件**:
|
||||
- [`010_verify.sql`](file:///Users/wzb/Desktop/项目/RailwaySystem/RuoYi-Vue/sql/train/v2/010_verify.sql)
|
||||
- [`010_verify.sql`](../../RuoYi-Vue/sql/train/v2/010_verify.sql)
|
||||
- **修改后实现**:
|
||||
- **UNIQUE 验收**:必须断言 `table_name` + `constraint_name` + `column_list`(如 `train_enrollment(plan_id, student_id)`);
|
||||
- **FK 验收**:必须断言源表、源列、目标表、目标列及 `delete_rule = 'NO ACTION'`,严禁 CASCADE;
|
||||
@@ -114,9 +114,9 @@
|
||||
- `ADD COLUMN IF NOT EXISTS ...` (003)
|
||||
- `CREATE INDEX IF NOT EXISTS ...` (006)
|
||||
- **修改文件**:
|
||||
- [`002_create_new_tables.sql`](file:///Users/wzb/Desktop/项目/RailwaySystem/RuoYi-Vue/sql/train/v2/002_create_new_tables.sql)
|
||||
- [`003_alter_master_tables.sql`](file:///Users/wzb/Desktop/项目/RailwaySystem/RuoYi-Vue/sql/train/v2/003_alter_master_tables.sql)
|
||||
- [`006_indexes.sql`](file:///Users/wzb/Desktop/项目/RailwaySystem/RuoYi-Vue/sql/train/v2/006_indexes.sql)
|
||||
- [`002_create_new_tables.sql`](../../RuoYi-Vue/sql/train/v2/002_create_new_tables.sql)
|
||||
- [`003_alter_master_tables.sql`](../../RuoYi-Vue/sql/train/v2/003_alter_master_tables.sql)
|
||||
- [`006_indexes.sql`](../../RuoYi-Vue/sql/train/v2/006_indexes.sql)
|
||||
- **修改后实现**:
|
||||
- 002 中 8 张新增表全部改为严格 `CREATE TABLE`;
|
||||
- 003 中新增字段全部改为严格 `ADD COLUMN`;
|
||||
@@ -131,8 +131,8 @@
|
||||
- **问题**:迁移执行契约依赖事务的原子性(`BEGIN ... COMMIT / ROLLBACK`)。当前环境为 KingbaseES V009R003C018 (`database_mode=mysql`),需在正式执行 V2 前实证验证当前数据库实例对 DDL 的事务回滚支持能力。
|
||||
- **原实现**:未设立 DDL 事务能力前置探针。
|
||||
- **修改文件**:
|
||||
- 新增:[`RuoYi-Vue/sql/train/v2/000_tx_capability_probe.sql`](file:///Users/wzb/Desktop/项目/RailwaySystem/RuoYi-Vue/sql/train/v2/000_tx_capability_probe.sql)
|
||||
- [`05_execution_contract.md`](file:///Users/wzb/Desktop/项目/RailwaySystem/docs/database-v2/05_execution_contract.md)
|
||||
- 新增:[`RuoYi-Vue/sql/train/v2/000_tx_capability_probe.sql`](../../RuoYi-Vue/sql/train/v2/000_tx_capability_probe.sql)
|
||||
- [`05_execution_contract.md`](05_execution_contract.md)
|
||||
- **修改后实现**:
|
||||
- 创建独立的安全探针脚本(作为 Gate A):
|
||||
- **Phase A**:`BEGIN -> CREATE TABLE public.__railway_v2_tx_probe -> ALTER TABLE -> ROLLBACK`;
|
||||
|
||||
Reference in new issue
Block a user