去除供应商类型多余代码
This commit is contained in:
@@ -1,11 +1,40 @@
|
||||
-- 客户、供应商主表增加合同开始时间、合同结束时间
|
||||
-- 已存在的库执行本脚本;列已存在时不要重复执行
|
||||
-- 客户主表增加合同开始时间、合同结束时间
|
||||
-- 供应商只增加合同结束时间;合同开始时间与原有合作开始日期重复,已有列则删除
|
||||
-- 客户列已存在时不要重复执行前面的 ALTER
|
||||
SET NAMES utf8mb4;
|
||||
|
||||
-- 先去掉供应商上后加的合同开始时间,避免后续语句失败时这一列还留着
|
||||
SET @has_supplier_contract_start := (
|
||||
SELECT COUNT(*) FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_NAME = 'sup_supplier'
|
||||
AND COLUMN_NAME = 'contract_start_date'
|
||||
);
|
||||
SET @drop_supplier_contract_start := IF(
|
||||
@has_supplier_contract_start > 0,
|
||||
'ALTER TABLE sup_supplier DROP COLUMN contract_start_date',
|
||||
'SELECT 1'
|
||||
);
|
||||
PREPARE drop_supplier_contract_start_stmt FROM @drop_supplier_contract_start;
|
||||
EXECUTE drop_supplier_contract_start_stmt;
|
||||
DEALLOCATE PREPARE drop_supplier_contract_start_stmt;
|
||||
|
||||
ALTER TABLE ctr_customer
|
||||
ADD COLUMN contract_start_date date DEFAULT NULL COMMENT '合同开始时间' AFTER credit_ed,
|
||||
ADD COLUMN contract_end_date date DEFAULT NULL COMMENT '合同结束时间' AFTER contract_start_date;
|
||||
|
||||
ALTER TABLE sup_supplier
|
||||
ADD COLUMN contract_start_date date DEFAULT NULL COMMENT '合同开始时间' AFTER cooperation_start_date,
|
||||
ADD COLUMN contract_end_date date DEFAULT NULL COMMENT '合同结束时间' AFTER contract_start_date;
|
||||
-- 供应商原有合作开始日期,只补合同结束时间(已有则跳过)
|
||||
SET @has_supplier_contract_end := (
|
||||
SELECT COUNT(*) FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_NAME = 'sup_supplier'
|
||||
AND COLUMN_NAME = 'contract_end_date'
|
||||
);
|
||||
SET @add_supplier_contract_end := IF(
|
||||
@has_supplier_contract_end = 0,
|
||||
'ALTER TABLE sup_supplier ADD COLUMN contract_end_date date DEFAULT NULL COMMENT ''合同结束时间'' AFTER cooperation_start_date',
|
||||
'SELECT 1'
|
||||
);
|
||||
PREPARE add_supplier_contract_end_stmt FROM @add_supplier_contract_end;
|
||||
EXECUTE add_supplier_contract_end_stmt;
|
||||
DEALLOCATE PREPARE add_supplier_contract_end_stmt;
|
||||
|
||||
Reference in New Issue
Block a user