A. sql中使用哪些语句实现权限的授予和回收
1、把查询STUDENT表的权限授给用户UI:
GRANT SELECT
ON TABLE student
TO UI;
GRANT SELECT
ON TABLE student
TO PUBLIC
WITH GRANT OPTION;
2、收回权限:
REVOKE SELECT
ON TABLE SC
FROM PUBLIC;
数据库角色是被命名的一组与数据库操作相关的权限,角色是权限的集合。
CREATE ROLE jue;
GRANT SELECT,UPDATE,INSERT
ON TABLE Student
TO RI;
GRANT RI TO 王平;
REVOKE RI FROM 王平;
(1)sql对所有表授予权限扩展阅读:
SQL Server用户权限包含了对象权限和语句权限这两种类型。
用户在登录到SQL Server 之后,其安全账号(用户账号)所归属的NT 组或角色所被授予的权限决定了该用户能够对哪些数据库对象执行哪种操作以及能够访问、修改哪些数据。在SQL Server 中包括两种类型的权限,即对象权限和语句权限。
B. SQL如何语用语句授予一个角色只能查询这个数据的所有表
比如:授予用户USER1在当前数据库中具有查询所以表的权限
EXEC sp_addrolemember 'db_datareader', 'USER1'
C. 请问如何用SQL语句为指定用户授权
用SQL语句为指定用户授权的具体步骤如下:
我们需要准备的材料分别是:电脑、sqlserver2008
1、首先打开sqlserver2008,之后点击打开左上角的“新建查询”。
D. 如何把一个用户下所有表的查询权限赋给另一用户
只要将用户1下所有表的查询权限赋给用户2即可。但是,用户1下可能有很多表,如果一条一条地写grant语句很不现实,这里介绍一种便捷的方法:通过查询语句得到grant赋权限脚本,执行一下就可以了。
SQL> show user
USER 为"SYS"
SQL> create user tt
2 identified by tt;
用户已创建
SQL> grant create session to tt;
授权成功。
SQL> select 'grant select on '||owner||'.'||object_name|| ' to user1;'
2 from dba_objects
3 where object_type='TABLE' and wner='SCOTT';
'GRANTSELECTON'||OWNER||'.'||OBJECT_NAME||'TOUSER1;'
------------------------------------------------------------------------------
grant select on SCOTT.BONUS to user1;
grant select on SCOTT.CC to user1;
grant select on SCOTT.CC1 to user1;
grant select on SCOTT.DEPT to user1;
grant select on SCOTT.EMP to user1;
grant select on SCOTT.SALGRADE to user1;
grant select on SCOTT.T1 to user1;
grant select on SCOTT.T2 to user1;
grant select on SCOTT.TT to user1;
已选择9行。
复制上面的查询结果执行一下就可以了。如果查询结果太多的话,可以将这样做:
set pages 999;
set heading off;
spool run_grant.sql
select 'grant select on '||owner||'.'||object_name|| ' to user1;'
from dba_objects
where object_type='TABLE' and wner='SCOTT';
spool off;
@run_grant
这是一种很方便高效的方法,可以使工作事半功倍。
把所有表的查询权限赋给另一个用户
grant select any table to QUERY;