37 lines
1.2 KiB
SQL
37 lines
1.2 KiB
SQL
-- 重量段、附加费记录所属价卡版本。已有库可重复执行。
|
|
SET NAMES utf8mb4;
|
|
|
|
SET @band_sql = (
|
|
SELECT IF(
|
|
COUNT(*) = 0,
|
|
'ALTER TABLE pay_weight_band ADD COLUMN version_no int(11) NOT NULL DEFAULT 1 COMMENT ''价卡版本,随产品版本变更'' AFTER product_id',
|
|
'SELECT 1'
|
|
)
|
|
FROM information_schema.COLUMNS
|
|
WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'pay_weight_band' AND COLUMN_NAME = 'version_no'
|
|
);
|
|
PREPARE stmt FROM @band_sql;
|
|
EXECUTE stmt;
|
|
DEALLOCATE PREPARE stmt;
|
|
|
|
SET @fee_sql = (
|
|
SELECT IF(
|
|
COUNT(*) = 0,
|
|
'ALTER TABLE pay_surcharge ADD COLUMN version_no int(11) NOT NULL DEFAULT 1 COMMENT ''价卡版本,随产品版本变更'' AFTER product_id',
|
|
'SELECT 1'
|
|
)
|
|
FROM information_schema.COLUMNS
|
|
WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'pay_surcharge' AND COLUMN_NAME = 'version_no'
|
|
);
|
|
PREPARE stmt FROM @fee_sql;
|
|
EXECUTE stmt;
|
|
DEALLOCATE PREPARE stmt;
|
|
|
|
UPDATE pay_weight_band b
|
|
INNER JOIN pay_product p ON p.product_id = b.product_id
|
|
SET b.version_no = IFNULL(p.version_no, 1);
|
|
|
|
UPDATE pay_surcharge s
|
|
INNER JOIN pay_product p ON p.product_id = s.product_id
|
|
SET s.version_no = IFNULL(p.version_no, 1);
|