drop_role(5)
NAME
DROP ROLE - remove a database role
SYNOPSIS
DROP ROLE [ IF EXISTS ] name [, ...]
DESCRIPTION
DROP ROLE removes the specified role(s). To drop a supe-
ruser role, you must be a superuser yourself; to drop non-
superuser roles, you must have CREATEROLE privilege.
A role cannot be removed if it is still referenced in any
database of the cluster; an error will be raised if so.
Before dropping the role, you must drop all the objects it
owns (or reassign their ownership) and revoke any privi-
leges the role has been granted. The REASSIGN OWNED [reas-
sign_owned(5)] and DROP OWNED [drop_owned(5)] commands can
be useful for this purpose.
However, it is not necessary to remove role memberships
involving the role; DROP ROLE automatically revokes any
memberships of the target role in other roles, and of
other roles in the target role. The other roles are not
dropped nor otherwise affected.
PARAMETERS
IF EXISTS
Do not throw an error if the role does not exist. A
notice is issued in this case.
name The name of the role to remove.
NOTES
PostgreSQL includes a program dropuser [dropuser(1)] that
has the same functionality as this command (in fact, it
calls this command) but can be run from the command shell.
EXAMPLES
To drop a role:
DROP ROLE jonathan;
COMPATIBILITY
The SQL standard defines DROP ROLE, but it allows only one
role to be dropped at a time, and it specifies different
privilege requirements than PostgreSQL uses.
SEE ALSO
CREATE ROLE [create_role(5)], ALTER ROLE [alter_role(l)],
SET ROLE [set_role(l)]
SQL - Language Statements 2008-01-03 DROP ROLE()
Man(1) output converted with
man2html