解释
【T】表名
【U】用户名
【L】登录名
【P】密码
【R】角色名
【Q】表示权限
权限名 | 汉语解释 |
---|---|
select | 查询权限 |
all privileges | 所有权限 |
update(C) | 对列C的修改权限 |
insert | 插入权限 |
delete | 删除权限 |
用户
用户用于身份鉴别,以进入数据库系统
语句 | 解释 |
---|---|
sp_addlogin 【L,P】 | 创建一个名为L,密码为P的登录号 |
sp_adduser【L,U】 | 创建一个用户U,并与登录名L关联 |
grant【Q】on table【T】to【U…】《with grant option》 | 给名为U的用户授权表T的Q权限《同时用户U也可给其他用户授权》(sql server中不写table) |
grant【Q】on table【T】to public | 给所有用户授权表T的Q权限 |
grant【Q】on table【T】to public | 给所有用户授权表T的Q权限 |
revoke【Q】on table【T】from【U…】《cascade/restinct》 | 从名为U的用户中回收表T的Q的权限《同时回收用户U给其他用户的权限/默认》 |
revoke【Q】on table【T】from public | 从所有用户中回收表T的Q权限 |
角色
是被命名的一组与数据库操作相关的权限,即角色是权限的集合。
通过为一组具有相同权限的用户创建一个角色,然后使用角色来管理数据库权限,这样就可以简化授权的过程。
比如教务网系统中,老师是一个角色,学生也是一个角色,各自有各自的权限
语句 | 解释 |
---|---|
create role【R】 | 创建一个名为R的角色 |
sp_addrole【R】 | 创建一个名为R的角色 |
revoke【R】from【U】 | 回收用户U中角色R的权限 |
revoke【Q】on table【T】from【R】 | 从名为R的角色中回收表T的Q的权限 |
grant【Q】on table to【R】 | 给角色R授权表T的Q权限 |
grant【R】to【U】 | 将角色R的权限给用户U(sql server不可用) |
sp_addrolemember【R】【U】 | 添加用户U至角色R的成员中 |