ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 关于存储过程中不能操作其他用户表数据的问题解决

关于存储过程中不能操作其他用户表数据的问题解决

原创 Linux操作系统 作者:longqidong 时间:2012-03-01 20:06:53 0 删除 编辑
今天在用户wzsb下创建存储过程,存储过程中需要对tpsi用户下的表中的数据进行DML操作,但是在编译的时候始终出错,报错为:表或试图不存在。
随后在sqlplus下使用wzsb用户去操作tpsi用户下的表,是能正常访问的,而且wzsb具有dba权限的,这是什么原因造成的呢。随后百度一下,在一遍介绍存储过程的文章中提到,对于存储过程中操作其他用户的数据,需要这个用户显示的赋操作权限。
我在tpsi用户下,grant insert on t_name to wzsb。然后再次编译OK了。为了简单起见,将其他权限也赋上,直接上wzsb可以操作tpsi下所有表:
  grant select any table to wzsb;
  grant insert any table to wzsb;
 grant update any table to wzsb;
 grant delete any table to wzsb;

这样问题解决。记录一下,在存储过程中,操作其他用户数据,虽说有dba权限还是不够的,需要显示的赋予相关权限。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22418990/viewspace-717479/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-08-26

  • 博文量
    94
  • 访问量
    426151