
` 是 MySQL 的转义符,避免和 mysql 的本身的关键字冲突,只要你不在列名、表名中使用 mysql 的保留字或中文,就不需要转义。
所有的数据库都有类似的设置,不过mysql用的是`而已。通常用来说明其中的内容是数据库名、表名、字段名,不是关键字。例如:
select from from table
第一个from是字段名,最后的table表名,但是同时也是mysql关键字,这样执行的时候就会报错,所以应该使用
select `from` from `table`
当然,为了便于阅读,不建议使用关键字作为字段名、表名,同时,应该对数据库名、表名、字段名用一对儿反引号包含。
在之前已经大概了解过Mysql数据库和学过相关的Oracle知识点,但是太久没用过Oracle了,就基本忘了...印象中就只有基本的SQL语句和相关一些概念....写下本博文的原因就是记载着Oracle一些以前没注意到的知识点...以后或许会有用...实例与数据库概念
Oracle数据库服务器由两部分组成:
实例:理解为对象,看不见的
数据库:理解为类,看得见的
我们在安装Oracle的时候,已经填写过自己数据库的名称了,一般实例与数据库的名称是一致的...
如果还没有安装Oracle数据库的,可以看一下我其他的博文....
那么我们自带的sqlplus黑色窗口与实例,数据库之间的关系又是什么的呢???我们可以看下图:
Oracle数据库把表、视图等都看成是对象:
Oracle中的null值
Oracle中如果存在字段是null值的话,那么在sqlplus中它是不会显示出来的....如果我们使用null值的数据与其他数据进行运算...那么最终得出的结果都是null值
因此,Oracle提供了NVL(表达式1,表达式2)函数供我们使用,如果表达式1的值为null值,那么就取表达式2的值...当然了,如果表达式1不是null,取的就是表达式1的值
还有值得注意的是:null值不能参数=号运算,null能参数number/date/varchar2类型运算
Oracle提供了 is null关键字来代替=号运算的问题
Oracle中的别名
我们知道在Mysql中如果要用别名的话,需要使用as关键字 ,后面跟着别名就行了....Oracle可以省略as关键字...
并且,一般地,我们使用别名都是用双引号""把别名括起来,Oracle也支持我们直接写别名,但是呢**,如果我们不写双引号,那么我们的别名是不能有空格的**
还有一点的是:Oracle的别名是不能使用单引号来括起来的,Oracle默认认为单引号是字符串类型和日期类型的。
1、首先单引号和反引号,如图,这里的 '图书ID' 就使用到了单引号,而 CREATE TABLE `book` 这里的 book 就使用到了反引号。
2、单引号:在例子中的条件值周围使用的是单引号。SQL 使用单引号来环绕文本值。如果是数值,不要使用引号。
3、反引号:它是为了区分MYSQL的保留字与普通字符而引入的符号。有MYSQL保留字作为字段的,必须加上反引号来区分。
4、双引号的用法和单引号有所类似,大多数数据库都支持单引号和双引号的互换,即varchar类型的变量既可以用单引号来囊括,也可以用双引号。
5、另外,在oracle里面,双引号还有一个意义,那就是保留大小写。在oracle数据库里面,所有的字段是默认为转化成大写后进数据库的,所以如果有一个表名为user,这个时候select * from user;这个语句是查不出任何数据的。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)