引用另一个模式的外键

Referencing the foreign key of another schema

对于我的项目,我使用的是 oracle 数据库,我必须使用 2 个不同的数据库模式。请考虑以下情况 -

我有一个架构 A,其中有一个 table table_a 和一个主键 apk

我还有另一个架构 B,其中我有一个 table table_b 和一个主键 bpk

如果这两个 table 都在同一个数据库中,那么我可以轻松地建立主键 - 外键关系。

但是我可以在这两列之间创建一个主键 - 外键关系(或类似的东西) - A.table_a.apkB.table_b.pbk

提前致谢。

要创建引用不同模式中对象的外键,您只需限定对象名称

ALTER TABLE B.table_b
  ADD CONSTRAINT fk_b_a FOREIGN KEY (apk) REFERENCES a.table_a( apk )

这还要求用户 BA.table_a 上具有足够的权限。用户需要拥有 REFERENCES 权限,并且可能还需要对 table 拥有 SELECT 权限。