命令的语法错误:“GRANT EXECUTE ON USERNAME.PKG.PROCEDURE TO OTHERUSER;”

时间:2015-05-06 14:38:30

标签: oracle

我想向用户B授予执行权限,以便它可以执行属于用户A的打包过程。

procedure name = PKGNAME.PROCEDURENAME
user = USERA

我正在尝试下面的命令:

GRANT EXECUTE ON USERA.PKGNAME.PROCEDURENAME TO USERB;

但它给了我错误:

  

第1行的错误:
  ORA-00905:缺少关键字

是否存在语法问题?我用这个链接: Granting Rights on Stored Procedure to another user of Oracle

1 个答案:

答案 0 :(得分:4)

您无法授予对程序包内某个程序的权限,可以授予整个程序包的权限,也可以将程序移到程序包之外,使其成为独立的程序,然后授予权限

所以

GRANT EXECUTE ON USERA.PKGNAME TO USERB;

GRANT EXECUTE ON USERA.PROCEDURENAME TO USERB;