【发布时间】:2016-01-10 18:59:46
【问题描述】:
我目前正在开发一个需要在数据库中存储多维数组的应用程序。目前我正在使用 3 层深的数组,可以是任何大小,因为它填充了用户生成的信息,并使用 json_encode() 将其转换为 string 并将其输入数据库。
问题在于单个字段非常大且难以读取,要更新数据,我必须检索数据、解码、更新、编码并重新上传。如果该网站确实被许多人使用,我不知道这将如何扩展。
我认为主要的替代方法是创建另一个表,每一行都由存储在主表中的唯一 id 访问,但我再次不确定这将如何扩展
哪个更好?非常感谢任何帮助:)
【问题讨论】:
-
如果该字符串不需要与其他字符串进行询问/分析/比较,则照常进行。否则,请参阅规范化
-
关于 MySQL,不要考虑数组或维度。在关系中思考!
-
the main alternative would be to create another table, with each row accessed by a unique id stored in the main table这就是 db 将如何存储您的 json TEXT/BLOB 的有效方式——该表只有一个指向实际存储值的位置的指针。在这两种选择中,让数据库来做。你没有说数据是什么,或者你如何使用它,你可以考虑将数据存储在其他地方(甚至是文件中)。请注意,问题中缺乏细节反映在您收到的答案含糊不清。
标签: php mysql json database multidimensional-array