39 lines
1.2 KiB
SQL
39 lines
1.2 KiB
SQL
-- Обновление таблицы tickets для добавления полей закрытия
|
|
USE botyobshik;
|
|
|
|
-- Проверяем и добавляем колонку closed_by
|
|
SET @dbname = DATABASE();
|
|
SET @tablename = 'tickets';
|
|
SET @columnname = 'closed_by';
|
|
SET @preparedStatement = (SELECT IF(
|
|
(
|
|
SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS
|
|
WHERE
|
|
(table_name = @tablename)
|
|
AND (table_schema = @dbname)
|
|
AND (column_name = @columnname)
|
|
) > 0,
|
|
'SELECT 1',
|
|
CONCAT('ALTER TABLE ', @tablename, ' ADD COLUMN ', @columnname, ' VARCHAR(255) AFTER admin_response')
|
|
));
|
|
PREPARE alterIfNotExists FROM @preparedStatement;
|
|
EXECUTE alterIfNotExists;
|
|
DEALLOCATE PREPARE alterIfNotExists;
|
|
|
|
-- Проверяем и добавляем колонку closed_at
|
|
SET @columnname = 'closed_at';
|
|
SET @preparedStatement = (SELECT IF(
|
|
(
|
|
SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS
|
|
WHERE
|
|
(table_name = @tablename)
|
|
AND (table_schema = @dbname)
|
|
AND (column_name = @columnname)
|
|
) > 0,
|
|
'SELECT 1',
|
|
CONCAT('ALTER TABLE ', @tablename, ' ADD COLUMN ', @columnname, ' DATETIME AFTER closed_by')
|
|
));
|
|
PREPARE alterIfNotExists FROM @preparedStatement;
|
|
EXECUTE alterIfNotExists;
|
|
DEALLOCATE PREPARE alterIfNotExists;
|