SQL权限与角色

SQL权限与角色
(一)权限

授权与收回

A授权 grant
格式:

grant <权限>,<权限>...
on <对象类型,对象名>...
to <用户>...
[with grant option]

(如果指定with grant option代表授权的用户还可以将此权限授予别人)
例子
1把查询Student 表的权限授予给用户U1

grant select
on table Student
to U1

2把student表和course表的全部权限授予给U2,U3

grant all privileges
on table studenr, course
to U2,U3

3把查询和修改权限授予给全部用户

grant update,select
on table Student
to public

4把对sc表的insert权限授予给U5并允许将此权限授予给其他用户

grant insert
on table sc
to u5
with grant option

B回收
2revoke
格式

revoke <权限><权限>....
on <对象类型><对象名>...
from<用户>...
[cascade|restrict]

‌(如果cascade|restrict中一个,则也回收他层分配过权限的级联用户)
例子
1把用户U5对sc表的insert权限回收

revoke insert
on table sc
from u5
cascade
(二)角色

角色是权限的集合
角色
1角色的创建
格式

create role <角色名>

2给角色授权
格式

grant <权限>...
on <对象类型><对象名>
to <角色>...

3将一个角色授予其他的角色
格式

grant <角色1>...
to <角色2>
[with asmin option]
(代表该角色或用户还可以将权限授予其他角色用户)

4角色权限的回收
格式

revoke<权限>....
on <对象类型><对象名>
to <角色>

例子
1创建R1对象

create role R1

2使R1拥有对Student表的select,update,insert权限

grant select,update,insert
on table student
to R1

3将这个角色授予给王平,张明,赵玲,使他们拥有R1这个角色的全部权限

grant R1
to 王平,张明,赵玲

4一次性回收王平的R1权限

revoke R1
from 王平

5在R1权限基础上增加delete权限

grant delete
on table student
to R1

6回收R1的select权限

revoke select
on table student
from R1

参考:书:《数据库系统概论》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值