Mysql常见报错解决分享-01-Invalid escape character in string.

所以

sql 复制代码
SET @form_json = '假如这个是你报错的字符串'
SET @form_json = REPLACE(@form_json, '\n', '\\n');
SET @form_json = REPLACE(@form_json, '\t', '\\t');
SET @form_json = REPLACE(@form_json, '\r', '\\r');

替换成对应的多加一个反斜杠符号的字符串就好了

其实也就是说报错的路径是

  • SQL解析器
    • 将'\n'解释为一个换行符
  • 是否是合法的JSON字符串
    • 由于JSON字符串中换行必须用\n表示,也就是说 原来的 字符串 在被 解析后 , 得到 的应该是 XXX\n XXX (合法的) ,但是由于没针对反斜杠符号 进行转义(也就是写成 \n 这样 解析后就会成 \n), 所以 直接被 解析成了换行符, 最终结果变成了
      XXX
      XXX (不合法)
相关推荐
NineData5 小时前
NineData 迁移评估功能正式上线
数据库·dba
NineData11 小时前
数据库迁移总踩坑?用 NineData 迁移评估,提前识别所有兼容性风险
数据库·程序员·云计算
赵渝强老师13 小时前
【赵渝强老师】PostgreSQL中表的碎片
数据库·postgresql
全栈老石17 小时前
拆解低代码引擎核心:元数据驱动的"万能表"架构
数据库·低代码
倔强的石头_1 天前
kingbase备份与恢复实战(二)—— sys_dump库级逻辑备份与恢复(Windows详细步骤)
数据库
jiayou643 天前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库
于眠牧北3 天前
MySQL的锁类型,表锁,行锁,MVCC中所使用的临键锁
mysql
李广坤4 天前
MySQL 大表字段变更实践(改名 + 改类型 + 改长度)
数据库
Turnip12025 天前
深度解析:为什么简单的数据库"写操作"会在 MySQL 中卡住?
后端·mysql
爱可生开源社区5 天前
2026 年,优秀的 DBA 需要具备哪些素质?
数据库·人工智能·dba