oracle用户之间授权查询
同事提了个需求,要oracle数据库中的a用户和b用户可以互相查询对方的表。a和b用户下都有很多的表,百度了一下,没有语句是执行一次就能赋权的,好多是先生成sql语句在导出在执行。select 'grant select on a.' || cr.table_name || ' to b;' from dba_tables where owner='a'我的方法是用存储过程执行declarebeg
·
同事提了个需求,要oracle数据库中的a用户和b用户可以互相查询对方的表。
a和b用户下都有很多的表,百度了一下,没有语句是执行一次就能赋权的,好多是先生成sql语句在导出在执行。
select 'grant select on a.' || cr.table_name || ' to b;' from dba_tables where owner='a'
我的方法是用存储过程执行
declare
begin
for cr in (select table_name from dba_tables where owner='a') loop
execute immediate 'grant select on a.' || cr.table_name || ' to b';
end loop;
end;

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)