diff --git a/bot/models/migrations/005_down__custom_role.sql b/bot/models/migrations/005_down__custom_role.sql index d5e8c537..e03e6cd7 100644 --- a/bot/models/migrations/005_down__custom_role.sql +++ b/bot/models/migrations/005_down__custom_role.sql @@ -1 +1,8 @@ ALTER TABLE custom_roles DROP COLUMN user_id; + +BEGIN; +ALTER TABLE custom_roles ADD COLUMN old_color VARCHAR NOT NULL; +UPDATE custom_roles SET old_color = CAST(color AS VARCHAR); +ALTER TABLE custom_roles DROP COLUMN color; +ALTER TABLE custom_roles RENAME COLUMN old_color TO color; +COMMIT; diff --git a/bot/models/migrations/005_up__custom_roles.sql b/bot/models/migrations/005_up__custom_roles.sql index 83165054..80d33a36 100644 --- a/bot/models/migrations/005_up__custom_roles.sql +++ b/bot/models/migrations/005_up__custom_roles.sql @@ -1 +1,11 @@ ALTER TABLE custom_roles ADD COLUMN user_id BIGINT; + + +-- Create a temporary column `new_color` and update the table with the values from this table. +-- Drop the old color column, then rename the new one and set it to non-nullable. +BEGIN; +ALTER TABLE custom_roles ADD COLUMN new_color INTEGER NOT NULL; +UPDATE custom_roles SET new_color = CAST(color AS INTEGER); +ALTER TABLE custom_roles DROP COLUMN color; +ALTER TABLE custom_roles RENAME COLUMN new_color TO color; +COMMIT;