如何定义一个表来存储 MySQL 数据库中的 JSON 对象?
Posted
技术标签:
【中文标题】如何定义一个表来存储 MySQL 数据库中的 JSON 对象?【英文标题】:How to define a table to store JSON objects in MySQL database? 【发布时间】:2017-06-12 02:06:11 【问题描述】:我想在 mysql 数据库中存储一个 JSON 对象(使用 xampp 和 mariadb)。要存储的数据类型应该是什么?如果使用 'json' 作为数据类型,则会出错。
【问题讨论】:
什么是 MariaDB 版本? 没有“json 对象”这样的东西。JSON
是一个字符串,它是一种将任意数据表示为字符串的格式。因此,您只需在关系数据库中使用 varchar
或 text
类型。
嗨@arkascha,你可能想看看dev.mysql.com/doc/refman/5.7/en/json.html
但是,正如 arkascha 所说,JSON 数据类型在 MariaDB 中还不是一个东西,但是 MySQL 支持 RiggsFolly 提到的
“从 MySQL 5.7.8 开始,MySQL 支持原生 JSON 数据类型”:dev.mysql.com/doc/refman/5.7/en/json.html
【参考方案1】:
解决办法是把json转成字符串保存为文本,从数据库中检索后重新转成json
【讨论】:
【参考方案2】:参考这个...这可能会有所帮助!
https://www.sitepoint.com/use-json-data-fields-mysql-databases/
P.S: 与 mysql 或 mariaDB 相比,Postgres 具有更好的存储 json 数据的功能
【讨论】:
以上是关于如何定义一个表来存储 MySQL 数据库中的 JSON 对象?的主要内容,如果未能解决你的问题,请参考以下文章