【发布时间】:2018-12-08 10:16:33
【问题描述】:
我有一个为不同模式中的各种表运行 grant select 语句的过程。我已经使用AUTHID CURRENT_USER 从 SQL Developer 成功执行此操作。
但是当我尝试从BODS designer 执行相同的过程时,它显示了我在从 SQL Developer 执行时使用AUTHID CURRENT_USER 之前遇到的相同错误
OCIStmtExecute 操作的 Oracle DNZ.WORLD 错误消息:
ORA-01749: 你不能授予/撤销权限到/从
那么有没有办法执行一个包含grant 语句的过程,来自 BODS 设计器?
【问题讨论】:
-
你能发布更多细节吗?您的程序将各种表的选择授予哪个用户?我不知道 BODS Designer 是如何工作的,但是当您使用
AUTHID CURRENT_USER时,这意味着如果 BODS Designer 使用的架构没有 GRANT 权限,则您无法 GRANT。 -
@Arijit 感谢您的快速回复,但抱歉,我无法发布代码。你能告诉我如何从 BODS 执行授权选择语句,以及用户应该拥有的所有访问权限和角色
-
您可以发布与您的实际代码完全不同的示例代码。使用表/模式名称,如 Table_A、Table_B 等。在我们为您提供帮助之前,我们需要知道您尝试授予哪个模式。
-
在模式 A 中创建了一个过程,该过程将选择权限授予模式 B 中的表 B。现在,当我直接在 Schema A 中执行该过程时,它可以工作,但是当我通过 bods 调用它时,它会显示上述错误。
标签: oracle stored-procedures business-objects user-roles grant