Android sqlite外键引用多行

Android sqlite外键引用多行,android,sqlite,foreign-keys,Android,Sqlite,Foreign Keys,我有两张桌子A和B。 在表A中,它包含两个列A1、A2,其中A1是主键 在表B中,其中一列B2在列A1中存储一个值数组 我想将这个数组中的每个元素引用到表A中的列A1。这可能吗 例如, 表A ID |名称|值 1 | OTZ | 10 2 |你好世界10 3|苹果| 2 4 |橙色| 5 表B id |数组 1 | 1,2 2 | 3,4 3 | 1,4 如何将col数组中的这些值引用到表A?正如您所要求的,一个简短的回答-这就是解决两个表之间“多对多”关系的方法。 多对多也可能意味着表A中的一

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

例如,
表A
ID |名称|值 1 | OTZ | 10
2 |你好世界10
3|苹果| 2
4 |橙色| 5

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


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

正如您所要求的,一个简短的回答-这就是解决两个表之间“多对多”关系的方法。 多对多也可能意味着表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(或类似的东西),它至少将这些表的两个主键作为组合主键保存(因此不允许两次相同的组合)


在这里可以找到一篇关于这方面的文章,其中有一个UML图和完整的(有效的)SQL示例代码:

那么A中的主键是文本值?!您想将表B中的PK保存为数组?。。。请不要-在某些情况下,您希望打破ACID规则(性能高于数据完整性)-这里的情况似乎不是这样。好的,我可以为主键再添加一列表A。但是我怎样才能在表B中引用它呢?嗯,从UML的角度来说,您希望在表a和B之间存储一个n:m连接-这通常是通过表a_B来完成的,表a_B将来自a和B的主键作为组合主键来存储。所以你可以保存As和BSA的所有可能组合你能回答我的问题,然后我接受吗?
TABLE A2B
A_id INT,
B_id INT,
 PRIMARY KEY (`A_id`, `B_id`)
CONSTRAINT...