ORACLE数据库,我想使用用户B中的表,在用户A创建视图(VIEW),需要什么权限呢?怎么写
2条回答 默认 最新
关注 不确定你的目的是让用户A获得创建视图的权限还是让用户A能查到用户B的数据
如果只是为了查这张表里的数据,不需要做数据过滤的话,直接授权B用户的这个表给A用户查询权限,A用户就能查B用户的这个表了
grant select on B用户.表名 to A用户;
然后在A用户下执行查询时要带上用户名
select * FROM B用户.表名;
或者再建一个同义词就不需要加用户名了
create synonym A用户.表名 for B用户.表名; select * FROM 表名;
如果是只让用户A访问视图,而视图里的表都是B用户的,那么也没必要把视图建在A用户下,你可以直接把视图先建在B用户下,然后使用上面的方法授权给A查询
如果是想让用户A能自主创建视图,而且还能使用用户B的表,那么要授权A用户查询任何表的查询权限和创建任何视图的权限
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 netty整合springboot之后自动重连失效
- ¥20 wireshark抓不到vlan
- ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
- ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
- ¥15 stata安慰剂检验作图但是真实值不出现在图上
- ¥15 c程序不知道为什么得不到结果
- ¥40 复杂的限制性的商函数处理
- ¥15 程序不包含适用于入口点的静态Main方法
- ¥15 素材场景中光线烘焙后灯光失效
- ¥15 请教一下各位,为什么我这个没有实现模拟点击