我有以下表格
items-> similars有很多关系
items_similars具有以下字段
如果我使用InnoDB作为我的引擎,我是否需要在items.id和items_similars.id之间创建关系?或者在similars.id和items_similars.id之间?甚至两个?
这样做有没有优势?
答案 0 :(得分:1)
多对多关系AFAIK只能通过RDBMS中的转换表(数据透视表)实现。 “items_similar”表至少应包含“items_id”和“similar_id”,这些是“items”和“similars”表的主键中的外键。
答案 1 :(得分:0)
CREATE TABLE item_similar
(
item_id int NOT NULL
,similar_id int NOT NULL
,PRIMARY KEY ( item_id, similar_id )
,FOREIGN KEY ( item_id ) REFERENCES item ( item_id ) ON UPDATE CASCADE
ON DELETE NO ACTION
,FOREIGN KEY ( similar_id ) REFERENCES similar ( similar_id ) ON UPDATE CASCADE
ON DELETE NO ACTION
)