【发布时间】:2012-04-08 07:00:58
【问题描述】:
这是我想要做的,我想在 db 记录中存储一个值列表,所以它是这样的:
| id | tags |
| 1 | 1,3,5 |
| 2 | 121,4,6 |
| 3 | 3,101,2 |
到目前为止,我发现的大多数建议都建议创建一个单独的连接表来建立多对多关系,但就我而言,我认为创建一个单独的表不合适,因为标签值只是一个数字列表。
我现在能想到的最好的方法是将数据存储为 csv 字符串,并在检索时进行相应的解析,但我仍在尝试找到一种方法,当我从数据库中检索它,如果我可以限制列表中元素的数量就更好了,有没有更好的方法来做到这一点?
我还没有决定使用哪个数据库,很可能是 postgresql,但如果它可以帮助我更好地实现这个,我向其他人开放,
【问题讨论】:
-
您使用的是哪个数据库?
-
每当我不得不做你描述的事情时(我不时这样做),我都因为不使用子表而感到难过。然后,我将它们添加为逗号分隔值的字符串。
-
@dash1e,我还没有决定使用哪个数据库,但很可能,我将使用 postgre
-
@Uwe Keim,如果我找不到更好的方法,我也会这样做,:)
-
1,2,3,4 真的是来自“标签”表的 id 吗?
标签: database arrays list schema relationship