【问题标题】:ORA-01749 - Oracle 12c vs 11gORA-01749 - Oracle 12c 与 11g
【发布时间】: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_PRIVSUSER_SYS_PRIVS. 你知道是什么原因吗?是否有可能以某种方式禁用 11g 上的错误?

顺便说一句。不要指出我为自己的对象授予特权是没有意义的。我知道这不是解决方案。我有一些在 12c 上运行良好但在 11g 上无法运行的软件包,由于某些原因我无法对其进行修改。

【问题讨论】:

  • 包的创建方式是否相同?听起来可能一个人有定义者权限,一个人有调用者权限。或者可能在 12c 中,您将包作为其所有者调用,而在 11g 中,您从不同的帐户调用它——尽管这可能是通过某些中间包的调用者/定义者权限。 (不过,在 11.2.0.4 中运行你所展示的内容对我有用)。
  • @AlexPoole 11.2.0.1 是我的。我会尝试应用补丁集,看看它是否有帮助..

标签: database oracle oracle11g oracle12c


【解决方案1】:

问题与Oracle版本有关。 错误显示在 11.2.0.1 但应用 11.2.0.4 后不存在。 Oracle 在这些版本之间的某个地方更改/修复了该问题。

【讨论】:

  • 可能与未记录的错误 8984274 有关,该错误已在 11.2.0.2 中修补(请参阅 MOS 1345539.1)。
猜你喜欢
  • 2014-10-03
  • 1970-01-01
  • 2019-11-17
  • 1970-01-01
  • 2017-01-27
  • 1970-01-01
  • 1970-01-01
  • 2020-07-10
  • 2017-07-31
相关资源
最近更新 更多