27 lines
859 B
MySQL
27 lines
859 B
MySQL
|
-- new enum value
|
||
|
ALTER TYPE public_ownership_type ADD VALUE IF NOT EXISTS 'Government-owned' BEFORE 'Charity-owned';
|
||
|
|
||
|
-- convert existing values
|
||
|
UPDATE buildings
|
||
|
SET community_public_ownership = 'Government-owned'
|
||
|
WHERE community_public_ownership = 'State-owned';
|
||
|
|
||
|
CREATE TYPE public_ownership_type_new
|
||
|
AS ENUM (
|
||
|
'Government-owned',
|
||
|
'Charity-owned',
|
||
|
'Community-owned/cooperative',
|
||
|
'Owned by other non-profit body',
|
||
|
'Not in public/community ownership'
|
||
|
);
|
||
|
|
||
|
-- Convert to the new type, casting via text representation
|
||
|
ALTER TABLE buildings
|
||
|
ALTER COLUMN community_public_ownership TYPE public_ownership_type_new
|
||
|
USING (community_public_ownership::text::public_ownership_type_new);
|
||
|
|
||
|
-- And swap the types
|
||
|
DROP TYPE public_ownership_type;
|
||
|
|
||
|
ALTER TYPE public_ownership_type_new RENAME TO public_ownership_type;
|