网络

教育改变生活

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 235|回复: 0
打印 上一主题 下一主题

【数据库】MySQL:MySQL转义字符

[复制链接]

616

主题

623

帖子

2807

积分

版主

Rank: 7Rank: 7Rank: 7

积分
2807
跳转到指定楼层
楼主
发表于 2023-5-15 21:16:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在 MySQL 中,除了常见的字符之外,我们还会遇到一些特殊的字符,如换行符、回车符等。这些符号无法用字符来表示,因此需要使用某些特殊的字符来表示特殊的含义,这些字符就是转义字符。

转义字符一般以反斜杠符号\开头,用来说明后面的字符不是字符本身的含义,而是表示其它的含义。MySQL 中常见的转义字符如下表所示。

转义字符转义后的字符
\"双引号(")
\'单引号(')
\\反斜线(\)
\n换行符
\r回车符
\t制表符
\0ASCII 0(NUL)
\b退格符

转义字符区分大小写,例如:'\b' 解释为退格,但 '\B' 解释为 'B'。

有以下几点需要注意:
  • 字符串的内容包含单引号'时,可以用单引号'或反斜杠\来转义。
  • 字符串的内容包含双引号"时,可以用双引号"或反斜杠\来转义。
  • 一个字符串用双引号"引用时,该字符串中的单引号 '不需要特殊对待,且不必被重复转义。同理,一个字符串用单引号'引用时,该字符串中的双引号"不需要特殊对待,且不必被重复转义。
例 1下面通过 SELECT 语句演示单引号' 双引号" 和反斜杠\的使用:mysql> SELECT 'C语言中文网', '"C语言中文网"','""C语言中文网""','C语言''中文网',  '\'C语言中文网';+-------------+---------------+-----------------+--------------+--------------+| C语言中文网 | "C语言中文网" | ""C语言中文网"" | C语言'中文网 | 'C语言中文网 |+-------------+---------------+-----------------+--------------+--------------+1 row in set (0.07 sec)mysql> SELECT "C语言中文网 ", "'C语言中文网'", "''C语言中文网''", "C语言""中文网", "\"C语言中文网";+--------------+---------------+-----------------+--------------+--------------+| C语言中文网  | 'C语言中文网' | ''C语言中文网'' | C语言"中文网 | "C语言中文网 |+--------------+---------------+-----------------+--------------+--------------+1 row in set (0.00 sec)mysql> SELECT "This\nIs\nC语言\n中文网";+----------------------+| ThisIsC语言中文网 |+----------------------+1 row in set (0.00 sec)
如果你想要把二进制数据插入到一个 BLOB 列,下列字符必须使用反斜杠\转义:   
  • NUL:ASCII  0。可以使用“\0“表示。
  • \:ASCII  92,反斜线。用“\\”表示。
  • ' :ASCII  39,单引号。用“\'”表示。
  • " :ASCII  34,双引号。用“\"”表示。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

WEB前端

QQ|手机版|小黑屋|金桨网|助学堂  咨询请联系站长。

GMT+8, 2024-5-5 06:56 , Processed in 0.050508 second(s), 21 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表