Přejmenování hodnoty enum je podporováno pouze počínaje Postgres 10.
Jak je zdokumentováno v příručce musíte použít rename VALUE
, nikoli rename attribute
přejmenovat hodnotu enum.
Hodnoty výčtů jsou také řetězcové konstanty, nikoli identifikátory. Proto je musíte uzavřít do jednoduchých, nikoli dvojitých uvozovek:
ALTER TYPE public.enum_subscription_sub_frequency RENAME VALUE 'BI-WEEKLY' TO 'BI_WEEKLY';
Pokud vás zajímá, proč se vám zobrazuje chyba „typ ... neexistuje“ se špatnou syntaxí:
Když použijete volbu RENAME ATTRIBUTE
to znamená, že by měl být změněn "běžný" typ objektu, takže Postgres hledá "skutečný" typ objektu.
Ale "typ výčtu" není "typ objektu", a proto si Postgres stěžuje na "typ xyz neexistuje", spíše než na chybu syntaxe.