2

我有两个表 A 和 B。
在表 A 中,它包含两个列,A1,A2,其中 A1 是主键
在表 B 中,其中一个列,比如说 B2,在
我想引用的列 A1 中存储一个值数组此数组中的每个元素到表 A 中的 col A1。这可能吗

例如
表 A
ID|name|value 1|OTZ|10
2|hello world 10
3|apple|2
4|orange|5

表 B
id|数组 1|1,2
2|3,4
3|1,4

如何将 col 数组中的这些值引用到表 A?

4

1 回答 1

1

正如您所要求的,一个简短的答案 - 这就是您解决两个表之间的“多对多”关系的方式。多对多也可能意味着表 A 中的一个条目与表 B 完全没有联系,或者它有数百个(反之亦然)

如果你有

TABLE A
id INT PRIMARY KEY,
a_description TEXT NOT NULL

TABLE B
id INT PRIMARY KEY,
b_description TEXT NOT NULL

如果你想保存这两者之间的关系,你将需要一个映射表,大多数时候称为 TABLEA2B (或类似的东西),它至少将这些表的两个主键作为组合主键(这样相同的组合不允许重复)

TABLE A2B
A_id INT,
B_id INT,
 PRIMARY KEY (`A_id`, `B_id`)
CONSTRAINT...

可以在此处找到带有 UML 图和完整(工作)SQL 示例代码的文章:http: //sqlrelationship.com/many-to-many-relationship/

于 2012-12-21T12:49:46.413 回答