Files
MES/sql/upgrade_asd_api_20260718.sql
2026-08-08 18:28:49 +08:00

47 lines
3.2 KiB
SQL
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- @SAFE
-- ============================================================
-- 昂盛达上位机 MES 接口(v1.5)数据表结构补齐迁移
-- 适用:mes2 数据库「在线升级 / 数据库升级」功能(Admin -> 数据库升级)
--
-- 重要说明(务必阅读):
-- 1. 首行 '-- @SAFE' 使本文件以「容错模式」执行:
-- 每条语句独立执行,列已存在时 ADD COLUMN 报错会被自动跳过,
-- 因此本脚本可重复运行(幂等),不会因 "Duplicate column" 而整体失败。
-- 2. 不要使用 DELIMITER / 存储过程:在线升级器按 ';' 机械切分 SQL
-- 不识别 DELIMITER,存储过程会被拆坏导致语法错误。
-- 3. 不要写 USE <库名>:在线升级已连接到正确的业务库,写死库名反而会因
-- "Unknown database" 整文件失败。
--
-- 字段映射(接口字段名 -> 数据库实际列):
-- status -> test_result
-- device -> device_code
-- test_time -> test_date
-- project_name -> product_model
-- 其余字段(tester/mo/site/station/work_order/group_name/running_time
-- 为接口新增列,直接补齐。
-- ============================================================
-- ===== 1. DGZXY_asd_test_record 补齐接口字段 =====
ALTER TABLE `DGZXY_asd_test_record` ADD COLUMN `tester` varchar(50) NOT NULL DEFAULT '' COMMENT '测试员';
ALTER TABLE `DGZXY_asd_test_record` ADD COLUMN `mo` varchar(50) NOT NULL DEFAULT '' COMMENT '制令单';
ALTER TABLE `DGZXY_asd_test_record` ADD COLUMN `site` varchar(100) NOT NULL DEFAULT '' COMMENT '工位';
ALTER TABLE `DGZXY_asd_test_record` ADD COLUMN `station` varchar(100) NOT NULL DEFAULT '' COMMENT '站点';
ALTER TABLE `DGZXY_asd_test_record` ADD COLUMN `work_order` varchar(50) NOT NULL DEFAULT '' COMMENT '工单';
ALTER TABLE `DGZXY_asd_test_record` ADD COLUMN `group_name` varchar(100) NOT NULL DEFAULT '' COMMENT '组别';
ALTER TABLE `DGZXY_asd_test_record` ADD COLUMN `running_time` varchar(50) NOT NULL DEFAULT '' COMMENT '运行时间';
-- ===== 2. DGZXY_asd_device 补齐接口字段 =====
ALTER TABLE `DGZXY_asd_device` ADD COLUMN `device_code` varchar(100) NOT NULL DEFAULT '' COMMENT '设备编码/序列号';
ALTER TABLE `DGZXY_asd_device` ADD COLUMN `group_name` varchar(100) NOT NULL DEFAULT '' COMMENT '组别';
ALTER TABLE `DGZXY_asd_device` ADD COLUMN `line_name` varchar(100) NOT NULL DEFAULT '' COMMENT '产线';
ALTER TABLE `DGZXY_asd_device` ADD COLUMN `station_code` varchar(100) NOT NULL DEFAULT '' COMMENT '工位编码';
ALTER TABLE `DGZXY_asd_device` ADD COLUMN `device_type` varchar(100) NOT NULL DEFAULT '' COMMENT '设备型号';
ALTER TABLE `DGZXY_asd_device` ADD COLUMN `remark` varchar(255) NOT NULL DEFAULT '' COMMENT '备注';
-- ===== 3. 修正 token 列长度(避免 64 位 token 被 char(32) 截断导致校验失败) =====
-- MODIFY 幂等:重复执行同一定义不会报错
ALTER TABLE `DGZXY_asd_api_token` MODIFY `token` varchar(128) NOT NULL COMMENT 'Token值';
-- 完成标记(在线升级器会忽略结果集,仅作可读提示)
SELECT 'ASD 接口迁移完成(SAFE 模式,已存在的列已自动跳过)' AS result;