这两天写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语句的时候, 最好也要按照这种规范来写