当前位置: 首页 > news >正文

编程语言到mysql ‘\‘到数量关系

在 MySQL 的模糊查询中,反斜杠 \ 的转义规则需要根据 转义层级 和 SQL 模式 来确定。以下是详细说明及示例:


一、默认模式下(未启用 NO_BACKSLASH_ESCAPES

1. 规则说明
  • 反斜杠转义\ 是 MySQL 的默认转义字符。

  • 转义层级

    1. 编程语言层转义(如 Java、Python、Go):字符串中的 \ 需要转义为 \\

    2. MySQL 层转义:传递到 SQL 中的 \\ 会被解释为单个 \

2. 示例场景
实际目标字符编程语言中的字符串最终 SQL 中的模式匹配的文本
单个 \"a\\\\b"a\\ba\b
两个 \\"a\\\\\\\\b"a\\\\ba\\b
匹配 \de"%\\\\de%"%\\de%abc\de 或 \de123

二、启用 NO_BACKSLASH_ESCAPES 模式

1. 规则说明
  • 禁用反斜杠转义\ 不作为转义字符,直接视为普通字符。

  • 转义方式:需使用其他转义符(如 ESCAPE '$' 自定义转义符)。

2. 示例场景
实际目标字符SQL 模式(自定义转义符)匹配的文本
单个 \LIKE 'a$%b' ESCAPE '$'a%b
匹配 \deLIKE '%\\de%'(直接写 \\de

三、关键总结

1. 默认模式下的反斜杠数量规则
目标字符编程语言中的字符串SQL 模式说明
\"\\\\"\\两层转义(代码层 + SQL层)
\\"\\\\\\\\"\\\\四个反斜杠变为两个
2. 常见误区
  • 误用单层转义:直接写 LIKE 'a\b',实际匹配的是 a b\b 被转义为退格符)。

  • 忽略编程语言转义:在代码中拼接字符串时未正确处理 \

3. 验证工具
  • 使用 HEX() 函数查看实际存储的二进制数据:

    SELECT HEX(word) FROM table WHERE ...;
    • \ 的 Hex 值为 5C


四、实战案例

场景1:查询文件名中的反斜杠
-- 目标:匹配 "C:\Program Files\MySQL\"
-- 正确写法(默认模式)
SELECT * FROM files 
WHERE path LIKE 'C:\\\\Program Files\\\\MySQL\\\\%';
场景2:查询包含 \n 的文本

-- 错误写法(匹配换行符) SELECT * FROM logs WHERE content LIKE '%\\n%'; -- 正确写法(匹配字面量 "\n") SELECT * FROM logs WHERE content LIKE '%\\\\n%';


五、转义规则总结

场景默认模式NO_BACKSLASH_ESCAPES 模式
匹配单个 \LIKE '\\\\'LIKE '\\'
匹配 \deLIKE '\\\\de%'LIKE '\\de%'
自定义转义符(如 $无需使用LIKE 'a$%b' ESCAPE '$'

通过理解转义层级和 SQL 模式,可精准控制模糊查询中的反斜杠匹配逻辑。

相关文章:

  • c++模版进阶
  • 11.第二阶段x64游戏实战-框架代码细节优化
  • mysql按条件三表并联查询
  • C语言进阶之自定义类型:结构体,枚举,联合
  • 关于TD算法的笔记【时间差分】
  • 小程序接口使用时,HttpOnly cookie 中的 sameSite 设置什么最合适
  • Redis入门(Java中操作Redis)
  • JavaWeb 课堂笔记 —— 11 MySQL 多表设计
  • HashMap为什么从java8的时候从头插变为尾插了
  • 利用代理 IP 突破反爬限制,实现跨境电商数据高效爬取
  • C++: Initialization and References to const 初始化和常引用
  • 数字ic后端设计从入门到精通(含fusion compiler, tcl教学)
  • C语言自定义类型详解一:结构体(内存对齐)
  • 数据结构(六)——红黑树及模拟实现
  • Linux系统编程 day2
  • 4月15日星期二今日早报简报微语报早读
  • Etcd 推荐配置(生产环境)
  • 路由重定向:redirect
  • PowerBI 度量值分组文件夹管理
  • Python之机器学习入门
  • 做网站 备案/厉害的seo顾问
  • 网站做业务赚钱吗/免费建站网站
  • 上海建站网/简述获得友情链接的途径
  • 遵义市住房和城乡建设局网站/网站seo诊断报告怎么写
  • 正能量网站建设/杭州搜索推广公司
  • 深圳网络推广外包/信息流优化师面试常见问题