我有3个表,并且想创建一个新表,其中有3列是其他3个表id的外键。
CREATE TABLE tableABC(
tblA INTEGER REFERENCES tableA,
tblB INTEGER REFERENCES tableB,
tblC INTEGER REFERENCES tableC,
newColumn Integer,
PRIMARY KEY (tblA, tblB, tblC) ----- Is this efficient ?
);
CREATE TABLE tableA(
tableA_id SERIAL PRIMARY KEY
);
CREATE TABLE tableB(
tableB_id SERIAL PRIMARY KEY
);
CREATE TABLE tableC(
tableC_id SERIAL PRIMARY KEY
);
现在对于表格tableABC
,我希望列对(tblA, tblB, tblC)
为unique
。查询此表时,搜索将基于这三列。哪种方式最适合高效。
我做了一些搜索,找不到在3个不同的表中对3列进行外键约束的方法。
例如FOREIGN KEY (b, c) REFERENCES other_table (c1, c2)
引用一个表。是否可以引用3个不同的表格。
TNX。