oracle如何给某个用户设定它只能访问指定的表?

我的操作过程如下:1.createusernew_useridentifiedbynew_pwd;2.grantconnect,resourcetonew_user;3.... 我的操作过程如下:
1.create user new_user identified by new_pwd;
2.grant connect,resource to new_user;
3.grant select tb_group to new_user;
三步都能执行成功,但是我用new_user用户登录上去,在table里面找不到tb_group 这张表,我哪里出问题了?
第三条敲错了,应该是【grant select on tb_group to new_user;】
展开
 我来答
康熙转世
2012-01-04 · TA获得超过6839个赞
知道大有可为答主
回答量:4325
采纳率:85%
帮助的人:2948万
展开全部
没有出问题 而是tb_group这个表不是属于new_user这个新建用户的
所以select的时候要带上用户名 或者新建同义词也可以
比如这个tb_group是abc用户下的
select * from abc.tb_group
追问
非常感谢,可以访问了,那我需要如何操作,才能使创建的这个用户在登录上面后,在table里面能显示可以访问的这几个表呢?
另外,通过abc.tb_group 可以访问了,但是,也可以通过abc.tb_other访问其它的表
追答
如果在表下面看到 那只能是在用户下创建同样的表 用new_user登陆
create table tb_group as select * from abc.tb_group
其实你可以建一个同义词
create or replace synonym tb_group
for abc.tb_group;
这样在new_user下直接就可以用select * from tb_group了
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式