怎样让一个用户能够访问另外一个用户的数据?

siaosa 2018-10-09 09:52:29
请教一下,用命令
CREATE USER usr01 IDENTIFIED BY xxxxxxx DEFAULT TABLESPACE DATA01 .....;
创建了一个用户usr01
现在想再创建另一个用户,他只能以只读的方式访问usr01的数据,应该怎么做?
...全文
837 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
andylei 2019-01-02
  • 打赏
  • 举报
回复
把此用户下的对象付权给另一用户即可带用户名访问,如果建同义词,可以不带用户名。
ruihuahan 2018-12-30
  • 打赏
  • 举报
回复
对,grant 权限就行了。
l19870910 2018-12-27
  • 打赏
  • 举报
回复
授权 grant select on 原表 to 用户
  • 打赏
  • 举报
回复
declare
v_names varchar2(50);
begin
for v_names in (select table_name from all_tables)
loop
execute imm...(忘了) 'grant select on '||v_names||' to user';
end loop;
end;

动态sql实现
  • 打赏
  • 举报
回复
grant select on all_tables to user;
siaosa 2018-10-11
  • 打赏
  • 举报
回复
有命令可以将:user1用户所有的表的查询权限,一次性授权给user2吗? 感觉一个table一个table的授权效率很低呀
卖水果的net 2018-10-10
  • 打赏
  • 举报
回复
用 U1 登录 grant select on mytable to U2 用U2 登录 select * from U1.mytable
  • 打赏
  • 举报
回复
把另外一个用户的对象select 权限 赋予它,可以用动态sql
谁是蜗壳儿 2018-10-10
  • 打赏
  • 举报
回复
当前登录的用户必须有访问user1表table1权限限,之后就可以当做是“一个用户”下的表完成跨用户查询。
如果没有权限的话,需要登录到user1给user2授权table1表查询权限:grant select on table1 to user2;即可完成权限设置。

17,378

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧