SQL 综合应用(2.数据控制) 实例_(学生,课程表,选修表)

本文详细介绍了数据控制语言(DCL)的基本概念及其在数据库权限管理中的应用,包括GRANT和REVOKE语句的具体用法,并通过实例展示了如何进行权限的授予与回收。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据控制语言(DCL)是用来设置或者更改数据库用户或角色权限的语句,这些语句包括grant(授权)、deny(拒绝)、revoke(收回)等语句,在默认状态下,只有sysadmin、dbcreator、db_owner或db_securityadmin等角色的成员才有权利执行数据控制语言

GRANT 的语法结构为:

GRANT [权限] ON [对象名] TO [用户] WITH [授权选项]

--假设SQL Server 中有U1这一用户,把查询学生表的权限授给用户 U1
grant select
on 学生
to U1,U2
--假设SQL Server 中有U1和U2用户,把对课程表的全部操作权限授予用户U1和U2
grant all
on 课程
to U1,U2
--把对选修表的查询权限授予所有用户
grant select
on 选修
to public

--假设SQL Server 中有U3用户,把查询学生表和修改学生学号的权限授予用户U3
grant select,update(学号)
on 学生
to U3
--假设SQL Server 中有U5用户,把对选修表的insert 权限授予U5用户,并允许将此权限再授予其他用户
grant insert 
on 选修
to U5
with grant option

REVOKE 的语法结构为:

REVOKE [权限] ON [对象名] FROM [用户]

--把用户U3修改学生学号的权限收回
revoke update(学号)
on  学生
from U3
--收回所有用户对选修表的查询
revoke select
on  选修
from public
--把用户U5对选修表的insert权限收回
revoke insert
on  选修
from U5 cascade /* cascade用于若要废除可授予的特权*/

 

转载于:https://www.cnblogs.com/lqsilly/archive/2013/04/30/3051966.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值