DROP ROLE (Enterprise)


The DROP ROLE statement removes one or more SQL roles.

{{site.data.alerts.callout_info}}DROP ROLE is an enterprise-only feature.{{site.data.alerts.end}}


  • The admin role cannot be dropped, and root must always be a member of admin.
  • A role cannot be dropped if it has privileges. Use REVOKE to remove privileges.

Required privileges

Roles can only be dropped by super users, i.e., members of the admin role.


{% include {{ page.version.version }}/sql/diagrams/drop_role.html %}


Parameter Description
name The name of the role to remove. To remove multiple roles, use a comma-separate list of roles.

You can use SHOW ROLES to find the names of roles.


In this example, first check a role's privileges. Then, revoke the role's privileges and remove the role.

> SHOW GRANTS ON documents FOR dev_ops;
|  Database  | Schema |   Table   |  User   | Privileges |
| jsonb_test | public | documents | dev_ops | INSERT     |
> REVOKE INSERT ON documents FROM dev_ops;

{{site.data.alerts.callout_info}}All of a role's privileges must be revoked before the role can be dropped.{{site.data.alerts.end}}

> DROP ROLE dev_ops;

See also