第一种情况下
两者在linux下和windows下不同,linux下不区分,windows下区分。
在windows下主要区别就是
单引号( ’ )或双引号主要用于 字符串的引用符号
如:
mysql> SELECT ‘hello’, ‘“hello”’, ‘"“hello”"’, ‘hel’‘lo’, '/‘hello’;
数据库、表、索引、列和别名用的是引用符是反勾号(‘`’) 注:Esc下面的键
如:
mysql>SELECT * FROM select
WHERE select
.id > 100;
如果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 使用单引号来环绕文本值。如果是数值,请不要使用引号。
按照别的说法来说就是Varchar类型(也可以说是String、字符串类型)这一些在数据库语句中使用的时候应该使用单引号,而不是直接使用。
而对于数值类型的,反而是不能使用单引号。
如图所示有正确的和错误的使用方法:
- 反引号:它是为了区分MYSQL的保留字与普通字符而引入的符号。
注意划重点:有MYSQL保留字作为字段的,必须加上反引号来区分!!!
所谓的保留字就是select database insert 这一类数据库的sql指令,当我们不得已要拿他们来做表名和字段名的时候 我们必须要加反引号来避免编译器把这部分认为是保留字而产生错误。
当然,在上面的例子中,id并不是保留字,这么加反引号只是作一个保险,这也是一个良好的sql建表习惯。
务必要记住:保留字既不能作为表名,也不能作为字段名,如果非要这么操作,请记住要增加反引号!