1
This commit is contained in:
53
_script/add_authorization_fields.sql
Normal file
53
_script/add_authorization_fields.sql
Normal 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;
|
||||
|
||||
12
_script/add_authorization_fields_simple.sql
Normal file
12
_script/add_authorization_fields_simple.sql
Normal file
@@ -0,0 +1,12 @@
|
||||
-- 为 pla_account 表添加授权相关字段(简化版)
|
||||
-- 执行时间:2025-01-XX
|
||||
-- 说明:如果字段已存在会报错,可以先执行上面的版本(带检查的版本)
|
||||
|
||||
-- 添加授权日期字段
|
||||
ALTER TABLE `pla_account`
|
||||
ADD COLUMN `authorization_date` DATETIME NULL COMMENT '授权日期(授权开始时间)' AFTER `active_actions`;
|
||||
|
||||
-- 添加授权天数字段
|
||||
ALTER TABLE `pla_account`
|
||||
ADD COLUMN `authorization_days` INT(11) NOT NULL DEFAULT 0 COMMENT '授权天数' AFTER `authorization_date`;
|
||||
|
||||
Reference in New Issue
Block a user