需要外键作为数组

var*_*ara 2 postgresql

CREATE TABLE test ( id int PRIMARY KEY , name );

CREATE TABLE test1 ( id integer[] REFERENCES test , rollid int );
Run Code Online (Sandbox Code Playgroud)

错误:外键约束“test3_id_fkey”无法实现详细信息:键列“id”和“id”的类型不兼容:整数[]和整数。

之后我也尝试另一种方式

CREATE TABLE test1 ( id integer[] , rollid int);

ALTER TABLE test1 ADD CONSTRAINT foreignkeyarray FOREIGN KEY (id) REFERENCES test;
Run Code Online (Sandbox Code Playgroud)

错误:无法实现外键约束“fkarray”详细信息:键列“id”和“id”的类型不兼容:整数 [] 和整数。

所以我尝试创建一个外键数组意味着它说错误。请告诉我任何人?

postgresql 版本是 9.1。

Den*_*rdy 5

你想要做的事情根本无法完成。在所有。没有如果,没有但是。

创建一个新表 test1_test,包含两个字段,test1_id、test_id。根据需要将外键放在那个上,并使 test1 的 id 为整数。