> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-fix-nav-issues.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> REVOKE 语句的文档

# REVOKE 语句

撤销用户或角色的特权。

<div id="syntax">
  ## 语法
</div>

**撤销用户的特权**

```sql theme={null}
REVOKE [ON CLUSTER cluster_name] privilege[(column_name [,...])] [,...] ON {db.table|db.*|*.*|table|*} FROM {user | CURRENT_USER} [,...] | ALL | ALL EXCEPT {user | CURRENT_USER} [,...]
```

**撤销用户的角色**

```sql theme={null}
REVOKE [ON CLUSTER cluster_name] [ADMIN OPTION FOR] role [,...] FROM {user | role | CURRENT_USER} [,...] | ALL | ALL EXCEPT {user_name | role_name | CURRENT_USER} [,...]
```

<div id="description">
  ## 描述
</div>

要撤销某项特权，可以使用比你计划撤销的范围更大的特权。例如，如果某个用户拥有 `SELECT (x,y)` 特权，管理员可以执行 `REVOKE SELECT(x,y) ...`、`REVOKE SELECT * ...`，甚至 `REVOKE ALL PRIVILEGES ...` 查询来撤销该特权。

<div id="partial-revokes">
  ### 部分撤销
</div>

你可以只撤销某项特权的一部分。例如，如果某个用户拥有 `SELECT *.*` 特权，你可以撤销其从某些表或某个数据库中读取数据的权限。

<div id="examples">
  ## 示例
</div>

授予 `john` 用户账户对除 `accounts` 之外所有数据库执行 SELECT 的特权：

```sql theme={null}
GRANT SELECT ON *.* TO john;
REVOKE SELECT ON accounts.* FROM john;
```

向 `mira` 用户账户授予一项特权，使其可以从 `accounts.staff` 表的除 `wage` 列之外的所有列中进行选择。

```sql theme={null}
GRANT SELECT ON accounts.staff TO mira;
REVOKE SELECT(wage) ON accounts.staff FROM mira;
```

[原文](/zh/reference/settings/session-settings)
