The DROP USER
statement removes one or more SQL users.
The DROP USER
statement performs a schema change. For more information about how online schema changes work in CockroachDB, see Online Schema Changes.
Since the keywords ROLE
and USER
can now be used interchangeably in SQL statements for enhanced PostgreSQL compatibility, DROP USER
is now an alias for DROP ROLE
.
Consideration
Users that own objects (such as databases, tables, schemas, and types) cannot be dropped until the ownership is transferred to another user.
Required privileges
Non-admin users cannot drop admin users. To drop non-admin users, the user must be a member of the admin
role or have the CREATEROLE
parameter set.
Synopsis
Parameters
Parameter | Description |
---|---|
user_name |
The username of the user to remove. To remove multiple users, use a comma-separate list of usernames. You can use SHOW USERS to find usernames. |
Example
All of a user's privileges must be revoked before the user can be dropped.
In this example, first check a user's privileges. Then, revoke the user's privileges before removing the user.
> SHOW GRANTS ON test.customers FOR mroach;
+-----------+--------+------------+
| Table | User | Privileges |
+-----------+--------+------------+
| customers | mroach | CREATE |
| customers | mroach | INSERT |
| customers | mroach | UPDATE |
+-----------+--------+------------+
(3 rows)
> REVOKE CREATE,INSERT,UPDATE ON test.customers FROM mroach;
> DROP USER mroach;