|
|
-- 数据库补充SQL(如果表已存在,使用此脚本添加缺失的字段)
|
|
|
-- 注意:如果表不存在,请先执行 init_database.sql
|
|
|
|
|
|
USE Simple_CA;
|
|
|
|
|
|
-- 为certificates表添加证书内容字段和序列号字段(如果不存在)
|
|
|
SET @dbname = DATABASE();
|
|
|
SET @tablename = "certificates";
|
|
|
SET @columnname = "certificate_content";
|
|
|
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 `certificate_content` TEXT NULL COMMENT '证书内容(PEM格式)' AFTER `expire_time`")
|
|
|
));
|
|
|
PREPARE alterIfNotExists FROM @preparedStatement;
|
|
|
EXECUTE alterIfNotExists;
|
|
|
DEALLOCATE PREPARE alterIfNotExists;
|
|
|
|
|
|
SET @columnname = "serial_number";
|
|
|
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 `serial_number` VARCHAR(64) NULL COMMENT '证书序列号' AFTER `certificate_content`")
|
|
|
));
|
|
|
PREPARE alterIfNotExists FROM @preparedStatement;
|
|
|
EXECUTE alterIfNotExists;
|
|
|
DEALLOCATE PREPARE alterIfNotExists;
|
|
|
|
|
|
-- 为ca_requests表添加CSR文件内容字段(如果不存在)
|
|
|
SET @tablename = "ca_requests";
|
|
|
SET @columnname = "csr_content";
|
|
|
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 `csr_content` TEXT NULL COMMENT 'CSR文件内容' AFTER `public_key`")
|
|
|
));
|
|
|
PREPARE alterIfNotExists FROM @preparedStatement;
|
|
|
EXECUTE alterIfNotExists;
|
|
|
DEALLOCATE PREPARE alterIfNotExists;
|