MySQL数据库JSON类型的用法、意义、内置函数

44次阅读
没有评论

共计 1446 个字符,预计需要花费 4 分钟才能阅读完成。

这篇文章主要讲解了“MySQL 数据库 JSON 类型的用法、意义、内置函数”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着丸趣 TV 小编的思路慢慢深入,一起来研究和学习“MySQL 数据库 JSON 类型的用法、意义、内置函数”吧!

概述

在 MySQL 数据库中,直到 5.7 这个版本,开始引入 JSON 数据类型,在此之前如果想在表中保存 JSON 格式类型的数据,则需要依靠 varchar 或者 text 之类的数据类型,如果在低于 5.7 版本的数据库中使用了 JSON 类型来建表,显然是不会成功的。

如何使用 JSON 类型

1、建表

在 MySQL 中创建具有 JSON 数据列的表,其实和数据类型没有太大区别,具体举例如下:

CREATE TABLE tab_base_info ( id BIGINT NOT NULL PRIMARY KEY auto_increment, content json );

2、新增数据

插入一条语句,注意看 JSON 数据列的内容:

INSERT INTO tab_base_info(content) VALUES ({ author :  HWB ,  toutiao :  https://www.toutiao.com/a6712764513814315528}

这里需要提醒的是:

JSON 列存储的数据要么是 NULL,要么必须是 JSON 格式数据,否则会报错。

JSON 数据类型是没有默认值的 (声明时 DEFAULT NULL)。

JSON 数据类型意义

其实,没有 JSON 数据类型的支持,我们一样可以通过 varchar 类型或者 text 等类型来保存这一格式的数据,但是,为什么还要专门增加这一数据格式的支持呢? 其中肯定有较 varchar 或者 text 来存储此类型更优越的地方。

保证了 JSON 数据类型的强校验,JSON 数据列会自动校验存入此列的内容是否符合 JSON 格式,非正常格式则报错,而 varchar 类型和 text 等类型本身是不存在这种机制的。

MySQL 同时提供了一组操作 JSON 类型数据的内置函数。

更优化的存储格式,存储在 JSON 列中的 JSON 数据会被转成内部特定的存储格式,允许快速读取。

可以基于 JSON 格式的特征支持修改特定的键值。(即不需要把整条内容拿出来放到程序中遍历然后寻找替换再塞回去,MySQL 内置的函数允许你通过一条 SQL 语句就能搞定)

MySQL 关于 JSON 的内置函数

MySQL 关于 JSON 数据格式的操作提供了很多高效率的内置函数,我们可以从 MySQL 官网上找到很详细的介绍和使用说明,下面贴一张 JSON 函数的指南:

其实从 JSON 功能介绍的主页也可以看到,这些内置函数支持我们创建、查找、替换和返回值等相关的操作,像我们替换指定内容的操作就可以使用 JSON_REPLACE() 这个函数,不过 *** 实现通过纯 SQL 语句执行最终的内容替换,还需要通过执行 UPDATE 语句,比如:

UPDATE tab_base_info SET content = json_replace(content,  $.author ,  xiaoming) WHERE id = 1;

其中“$.***”表示找到 JSON 内容中匹配的修改字段。

感谢各位的阅读,以上就是“MySQL 数据库 JSON 类型的用法、意义、内置函数”的内容了,经过本文的学习后,相信大家对 MySQL 数据库 JSON 类型的用法、意义、内置函数这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是丸趣 TV,丸趣 TV 小编将为大家推送更多相关知识点的文章,欢迎关注!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-28发表,共计1446字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)