【发布时间】:2016-06-13 21:47:13
【问题描述】:
我想在过程中向用户授予角色。例如,我以 jsmith 身份登录,我可以从一个 SQL 窗口访问:
EXECUTE IMMEDIATE 'grant some_role to rjones';
它运行成功。
但如果我创建这样的程序:
CREATE OR REPLACE PROCEDURE MY_ROLE_GRANTING_PROCEDURE
IS
BEGIN
EXECUTE IMMEDIATE 'grant some_role to rjones';
END;
当我运行该程序时,我收到以下错误:
ORA-01932:没有为角色“some_role”授予 ADMIN 选项
似乎我需要为我的程序授予与用户 jsmith 相同的角色授予能力,但我不知道该怎么做。另外,我以 jsmith 的身份创建了该过程,因此该过程的执行权限应该不是问题。
【问题讨论】: