将数组存储到数据库中

时间:2013-05-20 11:46:32

标签: php mysql database

我有一个数据库可以记录哪个用户应用了课程

像这样的申请表

id  post_id user_id
1   3   56
2   2   33
3   3   78
4   3   99

但我想将用户user_id更改为一个字符串并分解为数组。 所以在数据库中有很多行,一个post_id只有一行。

id  post_id user_id
1   3   56,78.99
2   2   33

比使用array_diff删除或更新user_id

并将其内爆回字符串并将其更新为mySQL。

所以1个帖子只占用了1行而不是数百行。这样做好吗?

2 个答案:

答案 0 :(得分:9)

不,不是。它非常难以查询数据库。尝试制定一个查询,按用户56查找所有帖子,以查看我的意思。

使您的数据库normalized保持原样。

答案 1 :(得分:1)

不是一个好主意,数据库旨在存储您最初描述的信息。如果您折叠记录,则几乎不会保存任何内容(存储空间通常很便宜),并且无法对数据执行有用的查询(性能和便利性)。