4.使用GRANT语句,把对基本表S、SC、C的使用权限授给其它用户,测试with grant option。
时间: 2024-05-12 14:15:50 浏览: 19
假设我们已经登录并且拥有对基本表S、SC、C的使用权限,现在我们需要授予其他用户相同的权限。
首先,我们需要创建两个新用户,并授权给他们:
```sql
CREATE USER user1 IDENTIFIED BY password;
CREATE USER user2 IDENTIFIED BY password;
GRANT CONNECT, RESOURCE TO user1, user2;
```
接下来,我们使用GRANT语句在这些用户之间传递权限:
```sql
GRANT SELECT, INSERT, UPDATE, DELETE ON S TO user1 WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, DELETE ON SC TO user1;
GRANT SELECT, INSERT, UPDATE, DELETE ON C TO user2;
```
此时,user1已经被授权对基本表S和SC进行SELECT、INSERT、UPDATE和DELETE操作,并且拥有GRANT选项。这意味着user1可以将这些权限传递给其他用户,如下所示:
```sql
GRANT SELECT, INSERT, UPDATE, DELETE ON S TO user3;
```
现在,user3也可以对基本表S进行SELECT、INSERT、UPDATE和DELETE操作。
但是,user1只能将自己被授权过的权限传递给其他用户。例如,user1不能将对基本表C的权限授予其他用户,因为他没有被授权对基本表C进行操作。
最后,我们还可以使用REVOKE语句撤销授权:
```sql
REVOKE SELECT, INSERT, UPDATE, DELETE ON S FROM user1;
```
以上语句将从user1的权限列表中删除对基本表S的所有权限。