oracle 和mysql 一些区别总结

一、列类型区别 Oracle支持多种类型,如可变长度varchar2、浮点型number、小数浮点型number(m,n),可变二进制数据raw,大对象类型lob(最大4G)。而MySQL提供可变长度varchar、浮点型float、double、小数decimal(m,n),可变二进制数据blob。二、约束 Oracle除了NOT NULL、UNIQUE、PRIMARY KEY、FOREIGN KEY和...
oracle 和mysql 一些区别总结
一、列类型区别

Oracle支持多种类型,如可变长度varchar2、浮点型number、小数浮点型number(m,n),可变二进制数据raw,大对象类型lob(最大4G)。而MySQL提供可变长度varchar、浮点型float、double、小数decimal(m,n),可变二进制数据blob。

二、约束

Oracle除了NOT NULL、UNIQUE、PRIMARY KEY、FOREIGN KEY和CHECK约束,还提供了检查约束,如:constraint gen_ch check(gender in ('male','female'))。

三、序列与同义词

Oracle使用序列来生成唯一ID,而MySQL则使用自增AUTO_INCREMENT。Oracle通过别名创建同义词,如create synonym t for a.table;MySQL使用别名显示字段,如select * from table as t。

四、查询表与列别名

Oracle在没有表的情况下需使用dual,而MySQL直接使用limit进行分页。MySQL支持列别名,如select column as c from table。

五、分页与全外连接

Oracle使用虚拟列rownum进行分页,而MySQL使用limit。Oracle支持全外连接,MySQL不支持。

六、索引

Oracle提供了查询索引的工具,如select * from user_ind_columns;MySQL则通过show create table t获取相关信息。

七、事务

Oracle默认情况下不允许不使用事务,MySQL则需要手动设置,如start transaction。

八、PL/SQL

Oracle的PL/SQL提供了比MySQL更多的功能和特性,如储存过程、函数的关键词is。

九、游标与触发器

Oracle的游标提供了更多功能,如c%isopen、c%rowcount、c%found、c%notfound等属性;MySQL的触发器使用new表示新数据。

十、PHP连接数据库

MySQL使用mysqli扩展,而Oracle则使用oci8扩展。2024-09-29
mengvlog 阅读 10 次 更新于 2025-07-20 01:51:11 我来答关注问题0
檬味博客在线解答立即免费咨询

mySQL相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部