mysql的单引号[ ' ],双引号[ " ]和esc下面的反勾号[ ` ]的区别

这两天写sql的时候,发现别名什么的喜欢直接使用双引号, 可是好像有时候用双引号会报错,或者单引号会报错, 所以详细把这三个符号区分了一下.


单引号 ' 和双引号 "都可以表示字符串,所以没有太多的区别 , 在平时用的时候是没问题的(windows)

SELECT "abc"

SELECT 'abc'

查询的结果都是:
这里写图片描述

所以都代表字符串


至于Esc键下面的[ ` ]和单引号 [ ’ ],在linux下和windows下不同,linux下不区分,windows下区分。

单引号( ’ )或双引号主要用于 字符串的引用符号

数据库、表、索引、列和别名用的是引用符是反勾号(‘`’)

我们再试试

SELECT `abc`

结果是

[SQL]SELECT `abc`

[Err] 1054 - Unknown column 'abc' in 'field list'

找不到这个列, 说明反勾号 ` 还是指的表, 索引 ,别名, 列名

我们来看看NavicatPremium自动生成的sql脚本:
这里写图片描述

可以看到表名都是[ ` ],字符串都是[ ’ ] , 所以大家也在写sql语句的时候, 最好也要按照这种规范来写

猜你喜欢

转载自blog.csdn.net/zzzgd_666/article/details/81110479