如何在 PostgreSQL 中的数组上添加外键约束?

How to add Foreign key constraint on array in PostgreSQL?

如何在 PostgreSQL 中对数组添加外键约束?

look_up table 角色

CREATE TABLE party_role_cd
(
  party_role_cd bigint NOT NULL,
  code character varying(80) NOT NULL,
  CONSTRAINT party_role_cd PRIMARY KEY (party_role_cd)
);

派对可以有零个或多个角色[0-N 关系]

CREATE TABLE party
(
  party_id biging NOT NULL,
  party_role_cd bigint[] NOT NULL,
  CONSTRAINT party_id PRIMARY KEY (party_id)
);

如何在 party table 中为 party_role_cd array 添加 foreign key 约束?

PostgreSQL 中没有实现。目前,FK 约束仅对整个列值之间的相等性起作用。没有 array-to-element 参考。有一个 2010 年添加的未完成的 TODO 项。请参阅:

甚至有人尝试实施它,但从未完成。