-- ============================================================================= -- 合同附件原始文件名 4 列(配合 mhd-product /menu/upload/v2 返回的 originalName 使用) -- 需求:合同管理-上传的文件显示原始文件名(此前仅存 fileKey,原名上传时被 UUID 替换丢失) -- 执行库:mhd-system 服务对应的业务库(达梦 DM8) -- 说明:DM 不支持 AFTER 定位列、不支持列内联 COMMENT;VARCHAR 默认按字节计长, -- UTF-8 中文 3 字节/字,故用 2000;新列追加在表尾,MyBatis-Plus 按列名驼峰映射不受影响 -- ============================================================================= ALTER TABLE CONTRACT_MANAGE ADD COLUMN CONTRACT_ORIGINAL_NAME VARCHAR(2000) NULL; ALTER TABLE CONTRACT_MANAGE ADD COLUMN INTEGRITY_AGREEMENT_NAME VARCHAR(2000) NULL; ALTER TABLE CONTRACT_MANAGE ADD COLUMN SECURITY_PROTOCOL_NAME VARCHAR(2000) NULL; ALTER TABLE CONTRACT_MANAGE ADD COLUMN OTHER_ATTACHMENTS_NAME VARCHAR(2000) NULL; COMMENT ON COLUMN CONTRACT_MANAGE.CONTRACT_ORIGINAL_NAME IS '合同正本附件原始文件名(多文件与contract_original_url同分隔符同顺序)'; COMMENT ON COLUMN CONTRACT_MANAGE.INTEGRITY_AGREEMENT_NAME IS '廉政协议附件原始文件名(多文件与integrity_agreement_url同分隔符同顺序)'; COMMENT ON COLUMN CONTRACT_MANAGE.SECURITY_PROTOCOL_NAME IS '安全协议附件原始文件名(多文件与security_protocol_url同分隔符同顺序)'; COMMENT ON COLUMN CONTRACT_MANAGE.OTHER_ATTACHMENTS_NAME IS '其他附件原始文件名(多文件与other_attachments_url同分隔符同顺序)'; -- ============================================================================= -- 执行前检查(列是否已存在,避免重复执行报错;DM 数据字典中标识符按大写存储) -- SELECT COLUMN_NAME FROM USER_TAB_COLUMNS -- WHERE TABLE_NAME = 'CONTRACT_MANAGE' -- AND COLUMN_NAME IN ('CONTRACT_ORIGINAL_NAME','INTEGRITY_AGREEMENT_NAME', -- 'SECURITY_PROTOCOL_NAME','OTHER_ATTACHMENTS_NAME'); -- -- 删除前检查(新列是否已有数据;有数据则删列后附件名将退回显示 uuid 名) -- SELECT COUNT(*) FROM CONTRACT_MANAGE -- WHERE CONTRACT_ORIGINAL_NAME IS NOT NULL -- OR INTEGRITY_AGREEMENT_NAME IS NOT NULL -- OR SECURITY_PROTOCOL_NAME IS NOT NULL -- OR OTHER_ATTACHMENTS_NAME IS NOT NULL; -- -- 回滚(确认无数据依赖后执行) -- ALTER TABLE CONTRACT_MANAGE DROP COLUMN CONTRACT_ORIGINAL_NAME; -- ALTER TABLE CONTRACT_MANAGE DROP COLUMN INTEGRITY_AGREEMENT_NAME; -- ALTER TABLE CONTRACT_MANAGE DROP COLUMN SECURITY_PROTOCOL_NAME; -- ALTER TABLE CONTRACT_MANAGE DROP COLUMN OTHER_ATTACHMENTS_NAME; -- =============================================================================