Wie wäre es mit
DROP USER <username>
Dies ist eigentlich ein Alias für DROP ROLE
.
Sie müssen alle mit diesem Benutzer verbundenen Berechtigungen explizit löschen, auch um seinen Besitz auf andere Rollen zu verschieben (oder das Objekt zu löschen).
Dies wird am besten erreicht durch
REASSIGN OWNED BY <olduser> TO <newuser>
und
DROP OWNED BY <olduser>
Letzteres entfernt alle Berechtigungen, die dem Benutzer gewährt wurden.
Siehe die Postgres-Dokumentation für DROP ROLE und die ausführlichere Beschreibung dazu.
Zusatz:
Anscheinend funktioniert der Versuch, einen Benutzer mit den hier erwähnten Befehlen zu löschen, nur, wenn Sie sie ausführen, während Sie mit derselben Datenbank verbunden sind, aus der die ursprünglichen GRANTS gemacht wurden, wie hier besprochen:
https://www.postgresql.org/message-id/83894A1821034948BA27FE4DAA47427928F7C29922%40apde03.APD.Satcom.Local