Files

55 lines
3.5 KiB
SQL
Raw Permalink Normal View History

2026-11-11 18:30:31 +08:00
-- =============================================================================
-- IT-2 增量补列(幂等):把 公寓端/04 表 4-5 / 4-7 的既定业务字段补齐到 IT-0 [推断] 表。
-- 前提:先执行 00_common.sql 建立 apt_add_column_if_missing。
-- 纪律:Q-20 / Q-40 / Q-43 / Q-48 未决项仍不新增列、不启用(表 13-10 用 JSON 兜底);
-- 本次只补设计文档已经明确列出的字段,不改 59 张表的口径与主键/唯一键/索引。
-- =============================================================================
-- 交路(表 4-5):jch/qd/zd 复用 route_name/start_station/end_station,enabled 复用 state,
-- sourceVersion 复用 source_version;其余 4 个字段为设计既定但 IT-0 未建的列。
CALL apt_add_column_if_missing('apt_master_route', 'jcsj',
'jcsj DATETIME(3) NULL COMMENT ''叫乘时刻基线;权威值恒由公寓复算(D8)''');
CALL apt_add_column_if_missing('apt_master_route', 'lysj',
'lysj DATETIME(3) NULL COMMENT ''离寓时刻''');
CALL apt_add_column_if_missing('apt_master_route', 'cclx',
'cclx VARCHAR(32) NULL COMMENT ''车次类型''');
CALL apt_add_column_if_missing('apt_master_route', 'bz',
'bz VARCHAR(512) NULL COMMENT ''备注''');
-- 房间运行时事实(表 4-7 #4 本地可编辑属性);快照字段仍在 apt_master_room,不在此表。
CALL apt_add_column_if_missing('gy_rooms', 'room_type',
'room_type VARCHAR(32) NULL COMMENT ''本地房型''');
CALL apt_add_column_if_missing('gy_rooms', 'room_dept',
'room_dept VARCHAR(64) NULL COMMENT ''所属部门''');
CALL apt_add_column_if_missing('gy_rooms', 'room_order',
'room_order INT NOT NULL DEFAULT 0 COMMENT ''展示排序''');
CALL apt_add_column_if_missing('gy_rooms', 'room_dir',
'room_dir VARCHAR(32) NULL COMMENT ''朝向''');
CALL apt_add_column_if_missing('gy_rooms', 'room_face',
'room_face VARCHAR(32) NULL COMMENT ''方位''');
CALL apt_add_column_if_missing('gy_rooms', 'bed_numbers',
'bed_numbers VARCHAR(64) NULL COMMENT ''床位号集合(本地展示)''');
-- 修复历史执行中因 Windows PowerShell 5.1 ASCII 管道损坏的列注释。
-- 只重置元数据,列类型/默认值/主键/索引口径不变;可重复执行。
ALTER TABLE apt_master_route
MODIFY COLUMN jcsj DATETIME(3) NULL COMMENT '叫乘时刻基线;权威值恒由公寓复算(D8)',
MODIFY COLUMN lysj DATETIME(3) NULL COMMENT '离寓时刻',
MODIFY COLUMN cclx VARCHAR(32) NULL COMMENT '车次类型',
MODIFY COLUMN bz VARCHAR(512) NULL COMMENT '备注';
ALTER TABLE gy_rooms
MODIFY COLUMN room_type VARCHAR(32) NULL COMMENT '本地房型',
MODIFY COLUMN room_dept VARCHAR(64) NULL COMMENT '所属部门',
MODIFY COLUMN room_order INT NOT NULL DEFAULT 0 COMMENT '展示排序',
MODIFY COLUMN room_dir VARCHAR(32) NULL COMMENT '朝向',
MODIFY COLUMN room_face VARCHAR(32) NULL COMMENT '方位',
MODIFY COLUMN bed_numbers VARCHAR(64) NULL COMMENT '床位号集合(本地展示)';
SELECT '=== IT-2 补列结果(含注释,中文不应为问号)===' AS section;
SELECT TABLE_NAME, COLUMN_NAME, COLUMN_TYPE, COLUMN_COMMENT
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = DATABASE()
AND ((TABLE_NAME = 'apt_master_route' AND COLUMN_NAME IN ('jcsj','lysj','cclx','bz'))
OR (TABLE_NAME = 'gy_rooms' AND COLUMN_NAME IN ('room_type','room_dept','room_order','room_dir','room_face','bed_numbers')))
ORDER BY TABLE_NAME, COLUMN_NAME;