mysql 双引号转义字符_mysql8 参考手册--字符串文字单引号、双引号及转义字符

字符串是由单引号(')或双引号(")字符引起的字节或字符序列。例子:

'a string'

"another string"

彼此相邻的带引号的字符串被串联为单个字符串。以下几行是等效的:

'a string'

'a' ' ' 'string'

如果SQ用启了LANSI_QUOTES模式,则字符串文字只能在单引号中引起来,因为双引号中引起的字符串被解释为标识符。

二进制字符串是字节字符串。每个二进制字符串都有一个名为binary的字符集和排序规则。非二进制字符串是一个字符串。它具有二进制以外的字符集和与字符集兼容的排序规则。

对于这两种类型的字符串,比较都是基于字符串单位的数值进行的。对于二进制字符串,单位是字节。比较使用数字字节值。对于非二进制字符串,单位是字符,某些字符集支持多字节字符,比较使用数字字符代码值。

字符串文字可能具有可选的字符集介绍程序和COLLATE子句,以将其指定为使用特定字符集和排序规则的字符串:

[_charset_name]'string' [COLLATE collation_name]

您可以使用 (或 )在国家字符集中创建一个字符串。这些语句是等效的:可以使用N'literal'(或N'literal')在国家字符集中创建字符串。这些陈述相当于:

SELECT N'some text';

SELECT n'some text';

SELECT _utf8'some text';

在字符串中,某些序列具有特殊含义,除非NO_BACKSLASH_ESCAPES启用了SQL模式。每个序列都以反斜杠(\)开头,即转义字符。MySQL可以识别表9.1“特殊字符转义序列”中所示的转义序列。对于所有其他转义序列,将忽略反斜杠。即,将转义字符解释为好像没有转义。例如,\xis x。这些序列区分大小写。例如, \b被解释为退格,但 \B被解释为B。根据character_set_connection系统变量指示的字符集进行转义处理

表9.1特殊字符转义序列

转义序列

序列表示的字符

\0

ASCII NUL(X'00')字符

\'

单引号(')字符

\"

双引号(")字符

\b

退格字符

\n

换行符(换行符)

\r

回车符

\t

制表符

\Z

ASCII 26(Control + Z); 请参阅表格后面的注释

\

反斜杠(\)字符

\%

一个%角色;请参阅表格后面的注释

_

一个_角色;请参阅表格后面的注释

以下SELECT语句说明了引用和转义的工作方式:

mysql> SELECT 'hello', '"hello"', '""hello""', 'hel''lo', '\'hello';

+-------+---------+-----------+--------+--------+

| hello | "hello" | ""hello"" | hel'lo | 'hello |

+-------+---------+-----------+--------+--------+

mysql> SELECT "hello", "'hello'", "''hello''", "hel""lo", "\"hello";

+-------+---------+-----------+--------+--------+

| hello | 'hello' | ''hello'' | hel"lo | "hello |

+-------+---------+-----------+--------+--------+

mysql> SELECT 'This\nIs\nFour\nLines';

+--------------------+

| This

Is

Four

Lines |

+--------------------+

mysql> SELECT 'disappearing\ backslash';

+------------------------+

| disappearing backslash |

+------------------------+

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值