博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySql和oracle的不同
阅读量:6209 次
发布时间:2019-06-21

本文共 1626 字,大约阅读时间需要 5 分钟。

一、语法的不同

  1、oracle没有offet,limit关键字,所以在oracle中要分页的话,要换成rownum

  2、oracle建表时,没有auto_increment,所有要想让表的主键自增,要自己添加序列。

  3、oracle有一个dual表,当select后没有表时,加上的。不加会报错的。select 1 这个在mysql不会报错的,oracle下会。select 1 from dual这样的话,oracle就不会报错了。

  4、对空值的判断,name != ""这样在mysql下不会报错的,但是oracle下会报错。在oracle下的要换成name is not null

  5、oracle下对单引号,双引号是有要求的,一般不准用双引号,用了会报错(ERROR at line 1: ORA-00904: "t": invalid identifier),而mysql就没有这样的限制。

  6、oracle表的字段是number型的,如果你$post得到的参数是123456,入库的时候,你需要用to_number,to_date这样的函数来强制转换一下,不然后会被当成字符串来处理。而mysql却不会。

  7、group_concat这个函数,oracle是没有的,如果要想用自已写方法。

  8、mysql的用户权限管理,是放到mysql自动带的一个数据库mysql里面的,而oracle是用户权限是根着表空间走的。(这点我感觉要好好理解下)

  9、在oracle下用group by的话,group by后面的字段必须在select后面出现,不然会报错的,而mysql却不会。

  10、mysql存储引擎有好多,常用的mysiam,innodb等,而创建oracle表的时候,好像只有一个存储引擎。

  11、oracle字段无法选择位置,alter table add column before|after,这样会报错的,即使你用sql*plus这样的工具,也没法改字段的位置。

  12、oracle的表字段类型也没有mysql多,并且有很多不同,例如:mysql的int,float对应oracle的number型等。

  13、oracle查询时from 表名后面 不能加上as不然会报错的,select t.username from test as t而在mysql下是可以的。

  14、oracle中是没有substring这个函数的,mysql是有的。

 

二、mysql移植到oracle中的表类型转换

MYSQL                  ORACLEBLOB(220)             RAW(220)BLOB (20)             RAW(20)BLOG(1024)             RAW(1024)VARCHAR(n)             VARCHAR2(n)CHAR                   CHARFLOAT(22,6)            NUMBER(22,6)DOUBLE(44,12)          NUMBER(44,12)TINYINT (3)            NUMBER(3)SMALLINT(5)            NUMBER(5)MEDIUMINT(8)           NUMBER(8)INT(10)                NUMBER(10)BIGINT(20)             NUMBER(20)DATATIME               DATA

 

 

附录:

      参见大神的博客: http://www.cnblogs.com/HondaHsu

转载于:https://www.cnblogs.com/george93/p/7808490.html

你可能感兴趣的文章
如何理解运维
查看>>
JAVA流程控制学习总结
查看>>
nib和xib的区别
查看>>
== 和 is 的区别
查看>>
2018年,牛客网小白月赛5
查看>>
sql 锁
查看>>
生死相依:说说JQuery中die()、live()详解[翻译]
查看>>
UML建模工具Visio 、Rational Rose、PowerDesign的比较
查看>>
JAVA常见算法题(九)
查看>>
Hbase集群扩展
查看>>
绘制loss曲线
查看>>
PHP守护进程化
查看>>
网络通信
查看>>
java C 类自动转换规则
查看>>
Oracle Essbase入门系列(一)
查看>>
大叔手记全集
查看>>
&和&&的区别
查看>>
如何申请开通微信多客服功能
查看>>
Sr_C++_Engineer_(LBS_Engine@Global Map Dept.)
查看>>
HTTP精简教程一:Web网络基础
查看>>