日期:2014-05-17 浏览次数:20874 次
create synonym tab1 for user1.tab1; --建好已後,用user2就可以直接選了 select * from tab1
------解决方案--------------------
不能直接select * from tab1,
必须select * from user1.tab1.
如果一定需要这样,
首先sys登陆,
sqlplus / as sysdba
赋予user1 create public synonym权限。
grant create public synonym to user1;
然后user1登陆
sqlplus user1/password
创建public synonym
create public synonym tab1 for tab1;
grant select on tab1 to user2;
然后user2登陆
select * from tab1;
------解决方案--------------------
你的这个问题是有关Oracle用户模式的问题~
user1创建的表是属于user1的模式的,其它的用户想要查询user1创建的表,是要明确表是在user1模式下面的,也就是user1.tab1
当然,楼上的几位也说了可以定义同义词,来方便使用其它用户模式下面的表。