-- 一袋双码:code 保持原追溯码,business_code 为内部扫码出入库的独立码值。
|
-- 先执行本脚本,再部署后端;历史数据通过后台勾选补生成,禁止直接复制追溯码。
|
SET @bag_business_column_exists = (
|
SELECT COUNT(*) FROM information_schema.columns
|
WHERE table_schema = DATABASE() AND table_name = 'mes_pro_bag_code' AND column_name = 'business_code'
|
);
|
SET @bag_business_ddl = IF(@bag_business_column_exists = 0,
|
'ALTER TABLE mes_pro_bag_code ADD COLUMN business_code VARCHAR(16) DEFAULT NULL COMMENT ''内部出入库业务码(16位数字)'' AFTER code', 'SELECT 1');
|
PREPARE bag_business_stmt FROM @bag_business_ddl;
|
EXECUTE bag_business_stmt;
|
DEALLOCATE PREPARE bag_business_stmt;
|
|
SET @bag_business_index_exists = (
|
SELECT COUNT(*) FROM information_schema.statistics
|
WHERE table_schema = DATABASE() AND table_name = 'mes_pro_bag_code' AND index_name = 'uk_business_code'
|
);
|
SET @bag_business_ddl = IF(@bag_business_index_exists = 0,
|
'ALTER TABLE mes_pro_bag_code ADD UNIQUE KEY uk_business_code (business_code)', 'SELECT 1');
|
PREPARE bag_business_stmt FROM @bag_business_ddl;
|
EXECUTE bag_business_stmt;
|
DEALLOCATE PREPARE bag_business_stmt;
|