Du skal definere en cast, der skal bruges, fordi der ikke er nogen standard cast tilgængelig.
Hvis alle værdier i varcharColumn
i overensstemmelse med enum-definitionen, bør følgende virke:
alter table foo
ALTER COLUMN varcharColumn TYPE enum_type using varcharColumn::enum_type;
Jeg personligt kan ikke lide enums, fordi de er ret ufleksible. Jeg foretrækker en kontrolbegrænsning på en varchar-kolonne, hvis jeg vil begrænse værdierne i en kolonne. Eller - hvis værdilisten ændres ofte og kommer til at vokse - en god gammel "opslagstabel" med en fremmednøglebegrænsning.