我有一个过程,它为不同模式中的各种表运行grant select
语句。我已经使用AUTHID CURRENT_USER
从SQL Developer成功执行了此操作。
但是,当我尝试从BODS designer执行相同的过程时,它显示的错误与我在使用AUTHID CURRENT_USER
之前从SQL Developer执行时遇到的错误相同
OCIStmtExecute操作的Oracle DNZ.WORLD错误消息:
ORA-01749:您可能无法授予/撤销权限
那么,有没有一种方法可以从BODS设计器中执行一个包含grant
语句的过程呢?
1条答案
按热度按时间3qpi33ja1#
这看起来像是BODS设计器正在使用的架构没有权限授予对另一个架构的对象的选择。使用
AUTHID CURRENT_USER
会导致Oracle以BODS Designer的权限运行该过程,而BODS Designer可能没有GRANT选项。删除AUTHID CURRENT_USER
将以定义过程的模式的权限运行过程,这应该可以解决问题。