如何在sql中将两个表之间的关系更改为多对多关系。我使用oracle作为数据库。
感谢
答案 0 :(得分:3)
表格之间的关系几乎总是, ONE-TO-MANY 或 ONE-to-ONE 。两个表之间没有 MANY-TWO-MANY 关系。如果你想要 MANY-TO-MANY ,你需要创建中间关系以保持关系。
例如,如果您希望表 A 和 B 之间存在 MANY-TO-MANY 关系,则需要创建一个中间表<强> C 强>:
create table a (a_id number primary key);
create table b (b_id number primary key);
-- c will hold many-to-many relationship between a and b
create table c (
a_id number not null references a(a_id),
b_id number not null references b(b_id),
primary key(a_id, b_id)
);