- MySQL与Oracle数据库之间最大的区别要属表空间。在MySQL中一个项目对应一个数据库,而在Oracle中通常一个项目对应一个表空间。
- oracle没有主键自增长;序列sequence 主要作为主键的自增长功能
- mysql默认主动提交事务、oracle默认手动提交事务
- mysql数据默认不区分大小写、oracle区分大小写
- oracle有检查约束:check
例如:性别只能输入男 或 女,输入其他则报错;
create table person (
pid number(10) primary key,
name varchar2(20) not null,
sex varchar2(2) check(sex='男' or sex='女'),
birthday date
);
-
oracle的select 后面只能出现group by后面列或聚合函数
-
oracle分页中要使用伪列:rownum代表的是查询结果编号,使用子查询来实现表分页:
select t.* from (select rownum rn, e.* from emp e) t where rn>0 and rn<=5
PostgreSQL
支持boolean、枚举(ENUM)、数组类型;
从第三位开始提取 3 个记录:
postgresql分页语句:SELECT * FROM COMPANY LIMIT 3 OFFSET 2;