17 lines
1.6 KiB
SQL
17 lines
1.6 KiB
SQL
SET NAMES utf8mb4;
|
|
USE baiyue_order;
|
|
-- MySQL 8 可重复执行的订单快照及履约字段迁移。
|
|
SET @schema_name = DATABASE();
|
|
SET @sql = IF((SELECT COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=@schema_name AND TABLE_NAME='ord_order' AND COLUMN_NAME='receiving_warehouse_address')=0,
|
|
'ALTER TABLE ord_order ADD COLUMN receiving_warehouse_address VARCHAR(600) NULL COMMENT ''收货仓地址历史快照'' AFTER receiving_warehouse_name','SELECT 1');
|
|
PREPARE s FROM @sql; EXECUTE s; DEALLOCATE PREPARE s;
|
|
SET @sql = IF((SELECT COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=@schema_name AND TABLE_NAME='ord_order' AND COLUMN_NAME='receiving_time')=0,
|
|
'ALTER TABLE ord_order ADD COLUMN receiving_time VARCHAR(100) NULL COMMENT ''收货时间历史快照'' AFTER receiving_warehouse_address','SELECT 1');
|
|
PREPARE s FROM @sql; EXECUTE s; DEALLOCATE PREPARE s;
|
|
SET @sql = IF((SELECT COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=@schema_name AND TABLE_NAME='ord_order' AND COLUMN_NAME='express_company')=0,
|
|
'ALTER TABLE ord_order ADD COLUMN express_company VARCHAR(64) NULL COMMENT ''履约快递公司'' AFTER reference_id','SELECT 1');
|
|
PREPARE s FROM @sql; EXECUTE s; DEALLOCATE PREPARE s;
|
|
SET @sql = IF((SELECT COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=@schema_name AND TABLE_NAME='ord_order' AND COLUMN_NAME='express_tracking_no')=0,
|
|
'ALTER TABLE ord_order ADD COLUMN express_tracking_no VARCHAR(128) NULL COMMENT ''履约快递单号'' AFTER express_company','SELECT 1');
|
|
PREPARE s FROM @sql; EXECUTE s; DEALLOCATE PREPARE s;
|