使用 Oracle 的备用模式中的外键?

本教程将介绍使用 Oracle 的备用模式中的外键?的处理方法,这篇教程是从别的地方看到的,然后加了一些国外程序员的疑问与解答,希望能对你有所帮助,好了,下面开始学习吧。

使用 Oracle 的备用模式中的外键? 教程 第1张

问题描述

我有两个模式,我们称它们为 BOB 和 FRED.我需要从架构 BOB 调用架构 FRED 中的一个表,以将该表中的主键用作外键.我已经为模式 FRED 设置了适当的授权以允许 BOB 访问它,但是每当我运行脚本时,它都会抱怨我没有正确的权限.我需要在某处更改其他设置吗?这也能做到吗?

我的FK创作如下:

ALTER TABLE "BOB"."ITEMGROUP" WITH CHECK ADD CONSTRAINT FK_ITEMS_ITEM FOREIGN KEY (ItemID)
REFERENCES "FRED"."ITEMS"(ItemID)

我正在与:

GRANT ALTER ON "FRED"."ITEMS" TO "BOB"

我收到此错误消息:

SQL Error: ORA-01031: insufficient privileges 
01031. 00000 -  "insufficient privileges"

*Cause: An attempt was made to change the current username or password
  without the appropriate privilege. This error also occurs if
  attempting to install a database without the necessary operating
  system privileges.
  When Trusted Oracle is configure in DBMS MAC, this error may occur
  if the user was granted the necessary privilege at a higher label
  than the current login.

*Action:Ask the database administrator to perform the operation or grant
  the required privileges.
  For Trusted Oracle users getting this error although granted the
  the appropriate privilege at a higher label, ask the database
  administrator to regrant the privilege at the appropriate label.

推荐答案

你需要:

grant references on "FRED"."ITEMS" TO "BOB"

参见这个 问汤姆"

好了关于使用 Oracle 的备用模式中的外键?的教程就到这里就结束了,希望趣模板源码网找到的这篇技术文章能帮助到大家,更多技术教程可以在站内搜索。