mysql双引号_MySQL中单引号,双引号和反引号的区别

展开全部

MySQL里引用字符串常量时需要用一对32313133353236313431303231363533e78988e69d8331333363353766英文单引号“ ' ”或英文双引号“ " ”将字符串常量常量括起来。例如:

'an apple'

"a book"

一般应使用英文单引号,如果字符串内需要包含单引号时,除了使用转义的办法外,我们可以选用一对双引号来包括字符串,这样字符串内的单引号被视作普通字符,无需特殊处理。

例如  Johnson's mother

select "Johnson's mother",'Johnson''s mother','Johnson\'s mother';

196bb03e5610f69a105da41ee847edbd.png

与单引号对应,使用英文双引号引用的字符串内需要包含双引号时,除了使用转义的办法外,我们可以用一对单引号来包括字符串,这样字符串内的双引号被视作普通字符,无需特殊处理。

例如  He said: "Go away"

select 'He said: "Go away"' ,"He said: ""Go away""" ,"He said: \"Go away\"" ;

0b4e02b641a1ff489281663d4d5adbf9.png

MySQL里使用一对反勾号“ ` ”将识别符括起来,一般情况下可以不用,单是如果识别符出现关键字冲突或标识符的写法可能产生歧义的情况下就必须使用。例如:

create table t1 (id int primary key ,desc varchar(10)); -- 这句会报错

create table t1 (id int primary key,`desc` varchar(10)); -- 这句客成功运行

另外,如果SQL服务器模式包括ANSI_QUOTES模式选项,还可以用双引号替代反勾号将识别符括起来:

mysql> CREATE TABLE "test" (col INT);

ERROR 1064: You have an error in your SQL syntax. (...)

mysql> SET sql_mode='ANSI_QUOTES';

mysql> CREATE TABLE "test" (col INT);

Query OK, 0 rows affected (0.00 sec)

之前报错,设置SQL服务器模式包括ANSI_QUOTES模式后,运行成功。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值