今天在写一条sql语句的时候,用的双引号,sql语句执行错误。记的同事问我mysql语句中的单引号和双引号有区别吗?回答是没有区别。
今天特地查了查,还是有点区别的。
mysql中的一段说明:
在mysql中,使用单引号和双引号俩种表达方法是一样的,尽管使用单引号的表达方法符合ANSI-SQL/92标准。
如果在字符串里有引号,则要用以下的不同方式来表示:
"abc'abc" 即 abc'abc
"abc""abc" 即 abc“abc
"abc/'abc" 即 abc'abc
"abc/"abc" 即 abc"abc
'abc"abc' 即 abc"abc
'abc''abc' 即 abc'abc
'abc/"abc' 即 abc"abc
‘abc/'abc' 即 abc'abc
可以看出,尽量还是使用单引号。
当修改了mysql的sql模式的时候(set @@global.sql_mode)的时候,选择不同sql模式,可能会出现单引号和双引号的区别。ANSI-SQL标准。
下面是转载的mysql手册:
mysql中的一个字符串是一个字符序列,由单引号(“'”)或双引号(“"”)字符(后者只有你不在ANSI模式运行)包围。例如: 在字符串内,某个顺序有特殊的意义。这些顺序的每一个以一条反斜线(“/”)开始,称为转义字符。MySQL识别下列转义字符: 注意,如果你在某些正文环境中使用“/%”或“/%_”,这些将返回字符串“/%”和“/_”而不是“%”和“_”。'a string'
"another string"
/0 NUL)字符。 /n /t /r /b /' /" // /% /_
本文详细解析了MySQL中单引号和双引号的区别,并通过实例说明了它们在不同场景下的应用,强调了使用单引号的推荐做法。同时,文章还探讨了SQL模式设置对单引号与双引号的影响。
1264

被折叠的 条评论
为什么被折叠?



