diff --git a/initialize/migrate/database/02153_user_subscribe_speed_limit.down.sql b/initialize/migrate/database/02153_user_subscribe_speed_limit.down.sql index 579a942..f4e9990 100644 --- a/initialize/migrate/database/02153_user_subscribe_speed_limit.down.sql +++ b/initialize/migrate/database/02153_user_subscribe_speed_limit.down.sql @@ -1,5 +1,37 @@ -- Purpose: Rollback user-level speed limit overrides from user_subscribe -ALTER TABLE `user_subscribe` - DROP COLUMN IF EXISTS `traffic_limit`, - DROP COLUMN IF EXISTS `speed_limit`; +SET @column_exists = ( + SELECT COUNT(*) + FROM INFORMATION_SCHEMA.COLUMNS + WHERE TABLE_SCHEMA = DATABASE() + AND TABLE_NAME = 'user_subscribe' + AND COLUMN_NAME = 'traffic_limit' +); + +SET @sql = IF( + @column_exists = 1, + 'ALTER TABLE `user_subscribe` DROP COLUMN `traffic_limit`', + 'SELECT ''Column traffic_limit does not exist in user_subscribe table''' +); + +PREPARE stmt FROM @sql; +EXECUTE stmt; +DEALLOCATE PREPARE stmt; + +SET @column_exists = ( + SELECT COUNT(*) + FROM INFORMATION_SCHEMA.COLUMNS + WHERE TABLE_SCHEMA = DATABASE() + AND TABLE_NAME = 'user_subscribe' + AND COLUMN_NAME = 'speed_limit' +); + +SET @sql = IF( + @column_exists = 1, + 'ALTER TABLE `user_subscribe` DROP COLUMN `speed_limit`', + 'SELECT ''Column speed_limit does not exist in user_subscribe table''' +); + +PREPARE stmt FROM @sql; +EXECUTE stmt; +DEALLOCATE PREPARE stmt; diff --git a/initialize/migrate/database/02153_user_subscribe_speed_limit.up.sql b/initialize/migrate/database/02153_user_subscribe_speed_limit.up.sql index 001c1fc..92aa100 100644 --- a/initialize/migrate/database/02153_user_subscribe_speed_limit.up.sql +++ b/initialize/migrate/database/02153_user_subscribe_speed_limit.up.sql @@ -10,7 +10,7 @@ SET @column_exists = ( SET @sql = IF( @column_exists = 0, - 'ALTER TABLE `user_subscribe` ADD COLUMN `speed_limit` int NOT NULL DEFAULT 0 COMMENT ''User-level speed limit override (Mbps, 0=use plan default)'' AFTER `upload`', + 'ALTER TABLE `user_subscribe` ADD COLUMN `speed_limit` BIGINT NOT NULL DEFAULT 0 COMMENT ''User-level speed limit override (Mbps, 0=use plan default)'' AFTER `upload`', 'SELECT ''Column speed_limit already exists in user_subscribe table''' );