MySQL的字符转义

news/2024/10/25 17:24:41/

表象


表结构如下:

alt

其中 content 字段存放json之后的数据,这个json数据里面 extra 字段的内容又是一段json,如下:

alt
INSERT INTO `future`.`test_escape_character`

`id``title``content``is_del` )

VALUES
 ( 2
 '我的博客',
    '{"web_id":31415,"name":"清澄秋爽","extra":"{\"url\":\"https://dashen.tech\",\"web_icon\":\"https://dashen.tech/favicon.ico\",\"desc\":\"苹果树下思索者\"}","online":1}',
 1 );
alt

写入之后,复制 content字段,发现extra 无法解析了

alt

而将 content字段{"web_id":31415,"name":"清澄秋爽","extra":"{\"url\":\"https://dashen.tech\",\"web_icon\":\"https://dashen.tech/favicon.ico\",\"desc\":\"苹果树下思索者\"}","online":1}直接在navicat中写入, 则可成功解析.


对比发现,能成功解析的extra,多了\.(这是json中的json必须要有的,起转义"的作用)

但为何insert进去的数据,就少了这个\?


即我们想要保存的是{"web_id":31415,"name":"清澄秋爽","extra":"{\"url\":\"https://dashen.tech\",\"web_icon\":\"https://dashen.tech/favicon.ico\",\"desc\":\"苹果树下思索者\"}","online":1}, insert写进去之后,却成了

{"web_id":31415,"name":"清澄秋爽","extra":"{"url":"https://dashen.tech","web_icon":"https://dashen.tech/favicon.ico","desc":"苹果树下思索者"}","online":1}


原由


这个问题是因为 MySQL的字符串转义 导致.

MySQL中,特殊字符用 反斜线(‘\’)开始, 从而导致**"url"** 被转义为"url",进而使保存的数据json解析失败.


解决


解决办法也非常简单,将用在转义起始的\也进行转义即可.

MySQL用\\来转义 反斜线(‘\’)字符,即在insert时,将 content 字段改为:

'{"web_id":31415,"name":"清澄秋爽","extra":"{\\"url\\":\\"https://dashen.tech\\",\\"web_icon\\":\\"https://dashen.tech/favicon.ico\\",\\"desc\\":\\"苹果树下思索者\\"}","online":1}'

这样写入的数据,就符合预期了~




更多MySQL的转义字符,可参考

MySql字符转义

MySQL中执行sql语句反斜杠需要进行转义否则会被吃掉

本文由 mdnice 多平台发布


http://www.ppmy.cn/news/1075988.html

相关文章

Vue2-replace属性、编程式路由导航、缓存路由组件、两个新的生命周期钩子、路由守卫、路由器工作模式

🥔:如果事与愿违,那一定是上天另有安排 更多Vue知识请点击——Vue.js VUE2-Day13 router-link的replace属性编程式路由导航1、什么是编程式路由导航2、如何编码3、使用案例示例说明 缓存路由组件两个新的生命周期钩子路由守卫1、路由元信息2、…

velocity一个基于Java的模板引擎

参考:https://blog.csdn.net/m0_51517236/article/details/126175283 http://www.51gjie.com/javaweb/896.html

如何处理生产环境中的数据倾斜问题?

分析&回答 1、flink数据倾斜的表现: 任务节点频繁出现反压,增加并行度也不能解决问题 部分节点出现OOM异常,是因为大量的数据集中在某个节点上,导致该节点内存被爆,任务失败重启 2、数据倾斜产生的原因&#x…

Python进行数据相关性分析实战

平时在做数据分析的时候,会要对特征进行相关性分析,分析某些特征之间是否存在相关性。本文将通过一个实例来对数据进行相关性分析与展示。 一、数据集介绍 本次分析的是企业合作研发模式效果分析,企业的合作研发大致分为 企企合作、企学合作…

40 - 个人博客项目-11- 文章详情

1. 新建 templates / article / detail.html 文章详情页面 (1). 继承公共模板 {% extends base.html %}{% block title %}文章详情 {% endblock %}(2). 编写文章样式 {% block styles %}{{ super() }}<style>#container {width: 1200px;margin: 0 auto;background-colo…

产品展示视频拍摄制作流程

通过精心策划和制作的产品展示视频&#xff0c;展示产品的独特魅力和卓越功能。激发受众对产品的兴趣和购买欲望。为了确保产品展示视频的制作质量和效果&#xff0c;需要团队一起探讨具体的拍摄制作流程。深圳产品活动视频制作公司老友记小编为您分析产品展示视频的拍摄制作过…

iPhone 15 Pro与iPhone 13 Pro:最大的预期升级

如果你在2021年首次发布iPhone 13 Pro时就抢到了它,那么你的合同很可能即将到期。虽然距离iPhone 15系列还有几周的时间,但你可能已经在想:是时候把你的旧iPhone升级为iPhone 15 Pro了吗? 我们认为iPhone 13 Pro是你现在能买到的最好的手机之一。但如果你想在2023年晚些时…

计算机图形软件(三)6-2 图形功能、软件标准、其他图形软件包

图形功能 通用图形软件包为用户提供建立和管理图形的各种功能。这些子程序可以按照它们是否处理输出、输入、属性、变换、观察、图形分割或一般的控制而进行分类。 图形的基本构造块称为图形输出图元(graphics output primitive)。它们包括字符串和几何成分&#xff0c…