在mysql(5.6)数据库中存储json数组的数据类型[关闭]
Posted
技术标签:
【中文标题】在mysql(5.6)数据库中存储json数组的数据类型[关闭]【英文标题】:what data type to store a json array in mysql (5.6) database [closed] 【发布时间】:2017-03-24 03:28:38 【问题描述】:在 json 数据类型不可用的 mysql 5.6 版中,我应该使用什么数据类型来存储 json 编码数组?到目前为止,我正在考虑将其存储为 TEXT 或 VARCHAR。这是我们必须存储的方式吗?
【问题讨论】:
我会选择TEXT
。
【参考方案1】:
您可以使用文本数据类型将 JSON 数据存储在 MySQL 数据库中。
【讨论】:
对于 5.7 之前的 MySQL,对吧?无论如何,谢谢。 “不得不”太强了。 OP不必;他们可以使用 VARCHAR、TEXT、MEDIUMTEXT、LONGTEXT,甚至是 BLOB 类型。【参考方案2】:这取决于您要存储的 JSON 数据的长度。如果不是太长,你可以使用 VARCHAR,但是这样你有 64K 的限制:
手册说:长度可以指定为 0 到 65,535 之间的值。 VARCHAR 的有效最大长度取决于最大行大小(65,535 字节,所有列共享)和使用的字符集。
因此,如果您希望拥有巨大的对象,请使用任何 TEXT 类型:
TEXT: 65,535 characters - 64 KB
MEDIUMTEXT: 16,777,215 - 16 MB
LONGTEXT: 4,294,967,295 characters - 4 GB
不过,从 Mysql 5.7.8 开始,您就可以使用原生 JSON 数据类型了。
【讨论】:
JSON
于 2015 年 8 月发布 5.7.8。
TINYTEXT:255 个字符 - 255 B 文本:65,535 个字符 - 64 KB 中文本:16,777,215 - 16 MB 长文本:4,294,967,295 个字符 - 4 GB以上是关于在mysql(5.6)数据库中存储json数组的数据类型[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如果包含 json 文档作为字符串,如何从 MySQL(5.6) 列中获取值
PHP/MySQL - 将数组数据存储为 JSON,不好的做法?