-- ============================================= -- 赋码管理 - 托盘表新增生成组标记 -- 批量生成袋码数据包时写入,用于任务失败/取消后清理未绑定的临时托盘 -- MySQL 8.4 适用(ADD COLUMN 不支持 IF NOT EXISTS,先查 information_schema) -- ============================================= SET NAMES utf8mb4; SET @exists = (SELECT COUNT(*) FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'mes_pro_pallet' AND column_name = 'generate_uuid'); SET @sql = IF(@exists = 0, 'ALTER TABLE mes_pro_pallet ADD COLUMN generate_uuid VARCHAR(32) DEFAULT NULL COMMENT ''生成组 UUID(批量生成时写入,用于失败/取消清理)'' AFTER temp_code', 'SELECT 1'); PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt; SET @indexExists = (SELECT COUNT(*) FROM information_schema.statistics WHERE table_schema = DATABASE() AND table_name = 'mes_pro_pallet' AND index_name = 'idx_generate_uuid'); SET @sql = IF(@indexExists = 0, 'ALTER TABLE mes_pro_pallet ADD INDEX idx_generate_uuid (generate_uuid)', 'SELECT 1'); PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;