Das Umbenennen eines Werts einer Aufzählung wird erst ab Postgres 10 unterstützt.
Wie im Handbuch dokumentiert Sie müssen rename VALUE
verwenden , nicht rename attribute
um den Wert einer Aufzählung umzubenennen.
Aufzählungswerte sind ebenfalls Zeichenfolgenkonstanten, keine Bezeichner. Daher müssen Sie sie in einfache Anführungszeichen setzen, nicht in doppelte Anführungszeichen:
ALTER TYPE public.enum_subscription_sub_frequency RENAME VALUE 'BI-WEEKLY' TO 'BI_WEEKLY';
Wenn Sie sich wundern, warum Sie einen "Typ ... existiert nicht"-Fehler mit der falschen Syntax erhalten:
Wenn Sie die Option RENAME ATTRIBUTE
verwenden dies zeigt an, dass ein „regulärer“ Objekttyp geändert werden sollte, sodass Postgres nach einem „echten“ Objekttyp sucht.
Aber ein "enum type" ist kein "object type" und deshalb beschwert sich Postgres über "type xyz does not exist", anstatt über einen Syntaxfehler.