繁体   English   中英

在Oracle和2模式中在表上创建外键失败

[英]Creating foreign keys on a table fails in Oracle and 2 schemas

我有两个模式,并且我正在尝试创建具有两个外键约束的表。 无论我是单独添加约束还是在表创建DDL中添加约束,创建外键约束都不起作用。 此外,无论我尝试运行两个用户中的哪个。 oracle错误是ORA-01031:特权不足。 当我省略外键约束时,将创建该表。

预期的结果:创建具有两个约束的表。

CREATE TABLE "XXX_MONITORING"."COMPOSITE_STATUS"
   (    "COMPOSITE_STATUS_ID" NUMBER,
    "COMPOSITE_ID" NUMBER,
    "STATUS" CHAR(1),
    CONSTRAINT "COMPOSITE_FK" FOREIGN KEY ("COMPOSITE_ID")
      REFERENCES "XXX_MONITORING_CONFIGURATION"."COMPOSITE_KPI_COMPONENTS" ("COMPONENT_ID") ON DELETE CASCADE ENABLE,
    CONSTRAINT "COMPOSITE_STATUS_FK" FOREIGN KEY ("STATUS")
      REFERENCES "XXX_MONITORING_CONFIGURATION"."INDICATION_COLOR" ("INDICATION_COLOR_ID") ON DELETE CASCADE ENABLE  
   );

表COMPOSITE_KPI_COMPONENTS和INDICATION_COLOR处于不同的架构,即XXX_MONITORING_CONFIGURATION。

该用户必须将COMPOSITE_KPI_COMPONENTS和INDICATION_COLOR上的REFERENCES授予XXX_MONITORING。

-- Grant statement

grant REFERENCES on COMPOSITE_KPI_COMPONENTS to XXX_MONITORING;
grant REFERENCES on INDICATION_COLOR to XXX_MONITORING;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM