oracle中有没有赋予一个用户查询另一个用户所有表的权限

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle中有没有赋予一个用户查询另一个用户所有表的权限相关的知识,希望对你有一定的参考价值。

你好:下面语句中有你需要的这个权限:select
any
table(如果针对单个用户的表话,这个没有,只能一个表一个表的授权)
创建用户并授权
上接第一步。
在SQL>后面输入创建用户的语句:
create
user
vpetl
identified
by
vpetl
default
tablespace
TBS_ETL_DATA;
回车,出现“User
created.”表示用户创建成功。
在SQL>后面输入给用户授权的语句:
grant
connect,resource,alter
system,debug
connect
session,select
any
table,delete
any
table,drop
any
table,alter
any
table
to
vpetl;
回车,出现“Grant
succeeded.”表示给用户授权成功。
在SQL>后面输入给用户授权的语句:
grant
execute
on
DBMS_LOCK
to
vpetl;
回车,出现“Grant
succeeded.”表示给用户授权成功。
在SQL>后面输入给用户授权的语句:
grant
select
on
v_$session
to
vpetl;
回车,出现“Grant
succeeded.”表示给用户授权成功。
在SQL>后面输入给用户授权的语句:
grant
select
on
v_$ACCESS
to
vpetl;
回车,出现“Grant
succeeded.”表示给用户授权成功。
在SQL>后面输入给用户授权的语句:
grant
alter
system
to
vpetl;
回车,出现“Grant
succeeded.”表示给用户授权成功。
在SQL>后面输入给用户授权的语句:
grant
insert
any
table,update
any
table
to
vpetl;
回车,出现“Grant
succeeded.”表示给用户授权成功。
参考技术A 可以将查询系统所有表的权限赋给另外一个用户。这个权限很大(使用sysdba授予),被授予的用户可以访问系统内的任意表。
grant
select
any
table
to
test(用户名需要查询表的用户);
使用用户test去访问别的用户下(如test2)的t表的时候
select
*
from
test2.t(表名);

oracle赋予一个用户具有查询另一个用户所有表数据

一  以需要被查询的用户登录oracle(假如为A)   B为要查询A用户下的表的用户

二  执行查询语句: select ‘grant select on A.‘|| tname ||‘ to  B;‘ from tab;

以下为模拟结果:

  1. grant select on A.DEPT to  B; 
  2. grant select on A.EMP to  B; 
  3. grant select on A.BONUS to  B; 
  4. grant select on A.SALGRADE to  B; 
  5. grant select on A.AVGSAL to  B; 
  6. grant select on A.BOOK to  B; 
  7. grant select on A.TEST_INDEX to  B;  
  8. grant select on A.TB_EMPLOYEES to  B; 

...

三 将结果复制

四  登录system用户

五 打开sqlwindow ,粘贴,运行。

可以将select换成all就是这些表的所有权限都赋予给B

以上是关于oracle中有没有赋予一个用户查询另一个用户所有表的权限的主要内容,如果未能解决你的问题,请参考以下文章

ORACLE把一个用户下的所有表权限赋予另一个用户?

oracle数据库赋予一个用户查询另一个用户中所有表

oracle赋予一个用户具有查询另一个用户所有表数据

oracle如何新建一个用户,并赋予权限啊??

oracle 赋予权限后,查询却显示表或视图不存在

oracle数据库的数据从一个用户复制到另一个用户