REVOKE INSERT ON TABLE SC FROM U5 CASCADE ; 将用户U5的INSERT权限收回的时候应该使用CASCADE,否则拒绝执行该语句
时间: 2024-03-23 22:37:47 浏览: 24
不太准确。在MySQL中,REVOKE语句默认不支持级联操作,因此在收回用户U5的INSERT权限时,不需要使用CASCADE关键字。实际上,如果您在REVOKE语句中使用了CASCADE关键字,MySQL将会返回一个错误,因为它无法执行级联操作。正确的REVOKE语句应该像这样:
```
REVOKE INSERT ON SC FROM U5;
```
这将从用户U5中撤销在SC表上执行INSERT操作的权限。如果您想要撤销用户U5在所有表上的权限,可以使用以下语句:
```
REVOKE ALL PRIVILEGES ON *.* FROM U5;
```
这将从用户U5中撤销所有数据库和表的权限。
相关问题
把用户u2对表sc的insert权限级联收回
好的,针对您的问题,您可以使用以下SQL语句来收回用户u2对表sc的insert权限,并级联收回其授予给其他用户的权限:
```
REVOKE INSERT ON sc FROM u2 CASCADE;
```
这样做将会收回用户u2对表sc的insert权限,并级联收回其授予给其他用户的权限,确保整个权限控制链的完整性和安全性。
(6)REVOKE基本语句(没有CASCADE);
REVOKE语句用于从MySQL用户中撤销特定的权限,其基本语法如下:
```sql
REVOKE privilege_name ON object_name FROM user_name;
```
其中,'privilege_name'是要撤销的权限名称,例如SELECT、INSERT、UPDATE、DELETE等;'object_name'是要撤销权限的对象名称,例如表名、数据库名等;'user_name'是要撤销权限的用户名。
例如,要从用户'john'中撤销对数据库'mydb'中所有表的SELECT权限,可以执行以下SQL语句:
```sql
REVOKE SELECT ON mydb.* FROM 'john'@'localhost';
```
执行以上语句后,用户'john'就不能再对'mydb'数据库中的所有表进行SELECT操作了。
需要注意的是,如果该用户将该权限授权给了其他用户,则撤销该权限时,也会一并撤销该用户对其他用户所授予的权限(除非使用CASCADE选项)。