欢迎投稿

今日深度:

Oracle和MySQL差异比较,oraclemysql

Oracle和MySQL差异比较,oraclemysql


常用功能差异

1、锁差异:

• Oracle锁加在数据块上

• InnoDB 是在索引上加锁,所以MySQL锁的粒度没有Oracle 精细。

2、导入导出:

• Oracle采用EXP /IMP ,EXPDP/IMPDP导入导出。

• MySQL采用mysqldump导出,导入可以采用管道或source。

3、commit:

• Oracle默认手动提交

• MySQL默认自动提交

4、SQL 缓存:MySQL只能缓存结果集,不能缓存SQL解析结果

5、数据库对象:

• Oracle将数据库对象编译存储,直接执行二进制码

• MySQL只存储代码,临时解析执行,所以MySQL触发器、存储过程、函数等对象创建时仅检查语法,不检查逻辑

6、事务:

• MySQL不是所有引擎都支持,建议优先使用InnoDB,相比其他引擎有更好的并发性

SQL写法差异

1、空字符串处理:

• 而Oracle 只有NULL的概念

• MySQL有空字符串 '' 和NULL,空串不等于NULL

2、结果集行数限制:

• Oracle使用rownum

• MySQL使用limit;

3、执行SQL:

• Oracle需要select func() from dual;

• MySQL可以直接select func();

4、修改字段类型或长度:

• Oracle:alter table tablename modify column ...;

• MySQL:alter table tablename modify (...);

5、复制数据:

• Oracle的as是必选,create table table1 as select * from table2;

• MySQL的as是可选,create table table1 select * from table2;

6、字符串处理:

• Oracle里用单引号包起字符串

• MySQL用双引号包起字符串

www.htsjk.Com true http://www.htsjk.com/oracle/24164.html NewsArticle Oracle和MySQL差异比较,oraclemysql 常用功能差异 1、锁差异: Oracle锁加在数据块上 InnoDB 是在索引上加锁,所以MySQL锁的粒度没有Oracle 精细。 2、导入导出: Oracle采用EXP /IMP ,EXPDP/IMPDP导入...
评论暂时关闭