【发布时间】:2016-05-20 06:41:42
【问题描述】:
我执行的时候有一些不同
create view XDUAL
as select * from dual
grant select on XDUAL to USER
在 Oracle 12c 和 11g 之间(将 USER 替换为您当前的用户)。它只在 11g 上给我一个错误:
ORA-01749: you may not GRANT/REVOKE privileges to/from yourself
但它在 12c 上运行良好。可以在我自己的对象上授予我自己的权限。
用户的定义是一样的。它们的内容完全相同USER_ROLE_PRIVS和USER_SYS_PRIVS.
你知道是什么原因吗?是否有可能以某种方式禁用 11g 上的错误?
顺便说一句。不要指出我为自己的对象授予特权是没有意义的。我知道这不是解决方案。我有一些在 12c 上运行良好但在 11g 上无法运行的软件包,由于某些原因我无法对其进行修改。
【问题讨论】:
-
包的创建方式是否相同?听起来可能一个人有定义者权限,一个人有调用者权限。或者可能在 12c 中,您将包作为其所有者调用,而在 11g 中,您从不同的帐户调用它——尽管这可能是通过某些中间包的调用者/定义者权限。 (不过,在 11.2.0.4 中运行你所展示的内容对我有用)。
-
@AlexPoole 11.2.0.1 是我的。我会尝试应用补丁集,看看它是否有帮助..
标签: database oracle oracle11g oracle12c