This commit is contained in:
张成
2025-12-15 18:36:20 +08:00
parent c083494fce
commit 6e5c35f144
15 changed files with 867 additions and 8 deletions

View File

@@ -0,0 +1,53 @@
-- 为 pla_account 表添加授权相关字段
-- 执行时间2025-01-XX
-- 说明:添加授权日期和授权天数字段,用于控制账号的使用期限
-- 检查并添加授权日期字段
SET @dbname = DATABASE();
SET @tablename = 'pla_account';
SET @columnname = 'authorization_date';
SET @preparedStatement = (SELECT IF(
(
SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS
WHERE
(TABLE_SCHEMA = @dbname)
AND (TABLE_NAME = @tablename)
AND (COLUMN_NAME = @columnname)
) > 0,
'SELECT 1', -- 字段已存在,不执行任何操作
CONCAT('ALTER TABLE `', @tablename, '` ADD COLUMN `', @columnname, '` DATETIME NULL COMMENT ''授权日期(授权开始时间)'' AFTER `active_actions`;')
));
PREPARE alterIfNotExists FROM @preparedStatement;
EXECUTE alterIfNotExists;
DEALLOCATE PREPARE alterIfNotExists;
-- 检查并添加授权天数字段
SET @columnname = 'authorization_days';
SET @preparedStatement = (SELECT IF(
(
SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS
WHERE
(TABLE_SCHEMA = @dbname)
AND (TABLE_NAME = @tablename)
AND (COLUMN_NAME = @columnname)
) > 0,
'SELECT 1', -- 字段已存在,不执行任何操作
CONCAT('ALTER TABLE `', @tablename, '` ADD COLUMN `', @columnname, '` INT(11) NOT NULL DEFAULT 0 COMMENT ''授权天数'' AFTER `authorization_date`;')
));
PREPARE alterIfNotExists FROM @preparedStatement;
EXECUTE alterIfNotExists;
DEALLOCATE PREPARE alterIfNotExists;
-- 验证字段是否添加成功
SELECT
COLUMN_NAME AS '字段名',
DATA_TYPE AS '数据类型',
IS_NULLABLE AS '允许NULL',
COLUMN_DEFAULT AS '默认值',
COLUMN_COMMENT AS '注释'
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = DATABASE()
AND TABLE_NAME = 'pla_account'
AND COLUMN_NAME IN ('authorization_date', 'authorization_days')
ORDER BY ORDINAL_POSITION;