首先,user2要有查询user1下表table1的权限; 其次,使用user2登录后,要用 select * from user1.table1; 这样的语句查询。
开放权限???????是执行下面这样的语句吗? grant select,insert,update on table1 to user2; 如果我想用user2用户访问user1中的多张表是不是要执行多次类似上述的语句呢,有没有其他什么方法呢?
若user1有grant权限,则用其登录后, grant select any table to user2; user2登录后就可以查询user1下的所有表。
问题应该是,你建的表是在原来的表空间下,你换了一个用户登录,默认的就是当前用户的表空间,所以你直接select * from table1就不对。应该加上原来的用户,select * from user1.table1; 这样就可以了。主要是新登录用户的表空间不同,不能直接默认方式查询。
首先:grant all on table1 to other_user(另外一个用户),然后select * from usr1.table1 即可!
是权限问题 user2没有user1的table1的操作权限 把table1的权限赋给user2,user2就可以访问了 grant (select/insert/update/delete/all) on table1 to user2; 用user2登录后,select * from user1.table1; 就可以查到table1了
你先看看,你的第一个用户默认的表空间是哪个,到那个表空间中看看表是不是在这里。 用另一个用户登录后,你查询时: select * from 表空间.表名,这样查看看
其次,使用user2登录后,要用 select * from user1.table1; 这样的语句查询。
grant select,insert,update on table1 to user2;
如果我想用user2用户访问user1中的多张表是不是要执行多次类似上述的语句呢,有没有其他什么方法呢?
grant select any table to user2;
user2登录后就可以查询user1下的所有表。
user2没有user1的table1的操作权限 把table1的权限赋给user2,user2就可以访问了
grant (select/insert/update/delete/all) on table1 to user2;
用user2登录后,select * from user1.table1; 就可以查到table1了
用另一个用户登录后,你查询时: select * from 表空间.表名,这样查看看