Oracle和Mysql操作上的一些区别

Oracle和Mysql操作上的一些区别:

1、主键

  Mysql一般使用自动增长类型,在创建表时只要指定表的主键为auto_increment,插入记录时,不需要再指定该记录的主键值,Mysql将自动增长;Oracle没有自动增长类型;

2、第三方数据库管理工具

  Mysql使用sql yog、Navicat for MySQL、MySQL Workbench(mysql 所在公司开发)

  Oracle使用PL/SQL Developerpl/sql plus(oracle安装时自带)

3、结果集行数限制-分页查询

  Mysql使用limit关键字实现;

  Oracle使用ROWNUM关键字实现。

  Oracle中ROWNUM不是某个表中的字段名,而是从一个表中查询数据时,oracle系统自动为查询结果返回的行按顺序的给出的编号;

  ORACLE写法如下:

    3.1 rownum对于小于某值的查询条件的处理

           

       3.2 rownum对于大于某值的查询条件的处理

    可以使用子查询方法来解决,需要注意的是,子查询中的rownum必须要定义别名,因为rownum不是某个表的列,如果不给定别名的话,无法知道rownum是子查询的列还                是主查询的列

            

4、数据类型比较

  4.1 Mysql中的set类型和enum类型,oracle不支持。

  4.2 Oracle中的NUMBER类型,可以用来表示mysql中int型和decimal类型。

  比如:DECIMAL就是NUMBER(10,2)这样的结构INT(10)就是是NUMBER(10),表示整型;
  MYSQL有很多类int型,tinyint mediumint bigint等,不同的int宽度不一样;

  4.3 Oracle中的date类型,相当于mysql中的datetime类型

5、多表查询全连接的区别

  Mysql的全连接:

      

   说明:mysql利用左连接和右连接分别查询出左右两边的数据,

      然后利用union去掉两边都有的重复数据,并合并查询结果。

  ORACLE的全连接

    

6、引号的用法区别

  Mysql单引号和双引号都可以使用。

  Oracle 默认支持单引号。

原文地址:https://www.cnblogs.com/lgmeng/p/13831825.html