文章目录
数据库环境:mysql,oracle,plsql
单引号,反引号,双引号
如图,这里的‘图书馆ID’用了单引号,而
CREATE TABLE `book`,这里的book就用到了反引号,那么他们的具体区别呢?
单引号
我们在例子中的条件值周围使用的是单引号。SQL使用单引号来环绕文本值。如果是数值,就不要用引号。
Varchar类型(或String,字符串类型)这一些在数据库语句中使用的时候就用单引号,而不是直接使用。如下:
反引号
它是为了区分MYSQL的保留字与普通字符而引入的符号。
所谓的保留字就是select database insert 这一类数据库的sql指令,当我们不得已要拿他们来做表名和字段名的时候, 我们必须要加反引号来避免编译器把这部分认为是保留字而产生错误。
当然上面的例子中,book并不是保留字,这么加反引号只是做一个保险,这也是一个良好的sql建表习惯。
务必记住:保留字既不能作为表明,也不能作为字段名,如果非要怎么做,记住要增加反引号。
双引号
一:双引号的用法和单引号有所类似,大部分数据库都支持单引号和双引号的互换,即varchar类型的变量既可以用单引号来囊括,也可以用双引号。
当然,一边双引号,一边单引号是不被允许的。
二:另外,在oracle里面,双引号还有一个意义,那就是保留大小写
在oracle数据库里面,所有的字段是默认转换成大写后进数据库的,所以你有一个表名为user ,这个时候selelct * from user,这个语句是查不出任何数据的
只有select *from "user"在可以,因为上面的语句会默认转换成大写。
总结
字符串用单引号;
表名,字段名等,区分保留字和普通字符,用反引号;
大部分数据库支持单引号和双引号互换,大小写冲突用双引号。
参考百度文库:https://jingyan.baidu.com/article/86fae346e5b9323c49121a21.html