PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Fehler bei ALTER TYPE in Postgres-Beziehung existiert nicht

ALTER TYPE ... RENAME ATTRIBUTE funktioniert nur für zusammengesetzte Typen, nicht für ENUM Typen.

Es gibt zwar eine Möglichkeit, einem solchen Typ neue Einträge hinzuzufügen (ALTER TYPE ... ADD VALUE 'new_value' ), gibt es keine unterstützte Methode zum Entfernen oder Umbenennen eines Aufzählungseintrags.

Wenn Sie keine Angst haben, mit den Katalogen herumzuspielen, können Sie es als Superuser versuchen:

UPDATE pg_enum
SET enumlabel = 'softwaredev'
WHERE enumtypid = 'user_types'::regtype
  AND enumlabel = 'it';

Ab PostgreSQL v10 können Sie

verwenden
ALTER TYPE ... RENAME VALUE ... TO ...