| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- -- =============================================================
- -- 风控平台 数据库增量脚本 特种设备-设备铭牌照片字段
- -- 适用版本: 风控平台 2026-07-07 之前的部署
- --
- -- 需求:
- -- 新增特种设备时必须上传设备铭牌照片(基于 MinIO 对象存储),
- -- 支持 JPG/PNG 格式,单个文件不超过 5MB。
- --
- -- 本脚本特征:
- -- - 全部 SQL 幂等,可重复执行(基于 INFORMATION_SCHEMA 判断)
- -- - 新环境用 risk_control_platform.sql 部署;已有环境用本脚本增量升级
- -- - 不修改业务表已有数据,仅追加字段
- -- =============================================================
- SET NAMES utf8mb4;
- -- =============================================================
- -- 1. 特种设备表 risk_special_equipment 加设备铭牌照片字段
- -- =============================================================
- -- 1.1 nameplate_url 设备铭牌照片 URL(MinIO public 桶路径)
- SET @sql = (SELECT IF(
- (SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS
- WHERE TABLE_SCHEMA = DATABASE()
- AND TABLE_NAME = 'risk_special_equipment'
- AND COLUMN_NAME = 'nameplate_url') = 0,
- 'ALTER TABLE `risk_special_equipment` ADD COLUMN `nameplate_url` VARCHAR(500) DEFAULT NULL COMMENT ''设备铭牌照片URL(MinIO对象存储路径,新增设备必填)'' AFTER `photo_list`',
- 'SELECT 1'));
- PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
- -- 1.2 nameplate_name 设备铭牌照片原始文件名(下载时显示用)
- SET @sql = (SELECT IF(
- (SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS
- WHERE TABLE_SCHEMA = DATABASE()
- AND TABLE_NAME = 'risk_special_equipment'
- AND COLUMN_NAME = 'nameplate_name') = 0,
- 'ALTER TABLE `risk_special_equipment` ADD COLUMN `nameplate_name` VARCHAR(200) DEFAULT NULL COMMENT ''设备铭牌照片原始文件名'' AFTER `nameplate_url`',
- 'SELECT 1'));
- PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
- -- =============================================================
- -- 2. 验证清单(可手动 SELECT 确认)
- -- =============================================================
- -- SELECT COLUMN_NAME, COLUMN_TYPE, COLUMN_COMMENT
- -- FROM INFORMATION_SCHEMA.COLUMNS
- -- WHERE TABLE_SCHEMA = DATABASE()
- -- AND TABLE_NAME = 'risk_special_equipment'
- -- AND COLUMN_NAME IN ('nameplate_url', 'nameplate_name');
|