• Oracle和MySQL


    简介

    • Oracle 数据库是一个对象关系数据库管理系统,是重量型数据库,是一个收费的数据库。
    • MySQL 是一个开源的关系数据库管理系统,是轻量型数据库,是一个开源、免费的数据库。

    区别

    1. 自增主键

    • MySQL有自动增长的数据类型,在创建表时只要指定表的主键auto increment,插入记录时不用操作此字段,会自动增长。
    • Oracle没有自动增长的数据类型,一般建立一个序列号作为主键,插入记录时将序列号的下一个值赋给该字段即可。
    1.建普通表
      create table tb1(id number not null);
    2. 创建序列,参数比较多,自行查阅资料
      create sequence seq_tb1 increment by 1 start with 1 minvalue 1 maxvalue 999999999
    3. 插入使用
      insert into tb1 (id) values (seq_tb1.nextval)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    2. 创建索引

    • mysql中想要添加索引可以在建表时操作,也可以在后期更改;
    1. 建表时指定
        create table tb1 (username varchar(50), index username (username));
    2. 后期更改
        alter table tb1 add index username (usrrname);
    
    • 1
    • 2
    • 3
    • 4
    • oracle中只能在建表完成之后操作。
    CREATE INDEX tb1_username ON tb1(username);
    
    • 1

    3. 字段表注释

    • Mysql中在建表或增加字段时直接指定;
    1. 建表时指定
        create table tb1(username varchar(50) comment '用户名标识') comment '测试建表';
    2. 修改表结构时指定
        alter table tb1 add column nickname varchar (100) '昵称';
    
    • 1
    • 2
    • 3
    • 4
    • Oracle中只能在建表之后和创建字段之后才能进行注释。
    -- 表注释
        comment on table tb1 is '测试建表';
    -- 字段注释
        comment on tb1.username is '用户名称标识';
    
    • 1
    • 2
    • 3
    • 4

    4. 单引号的处理

    • MySQL里可以用双引号或者单引号包起字符串;
    • Oracle里只可以用单引号包起字符串。

    5. 日期字段的处理

    • MySQL日期字段分DATE和DATETIME两种;
    • Oracle日期字段只有DATE,包含年月日时分秒信息,可以用函数TO_DATE()TO_CHAR() 进行日期格式的转换。

    6. 分页查询

    • MySQL可以直接在SQL语句中写"select… from …where…limit x, y",有limit就可以实现分页;
    • Oracle则是需要用到伪列ROWNUM和嵌套查询。
        select * from (select t.*,rownum num from tb1 t where rownum<=100 ) where num>50
    
    • 1

    7. 保存数据的持久性

    • MySQL在数据库更新或者重启,可能会丢失数据;
    • Oracle把提交的sql操作线写入了在线联机日志文件中,保持到了磁盘上,可以随时恢复。

    8. 事务提交

    • MySQL默认是自动提交事务;
    • Oracle默认不自动提交事务,需要用户手动提交,需要在写commit;指令或者点击commit按钮。

    9. 事务支持

    • MySQL在innodb存储引擎的行级锁的情况下才可支持事务
    • Oracle则完全支持事务

    其他区别有待总结~

  • 相关阅读:
    如何使用html、css制作一个期末作业网站【羽毛球体育运动主题html网页设计】
    小程序毕设作品之微信体育馆预约小程序毕业设计成品(8)毕业设计论文模板
    【数学】Pair of Topics—CF1324D
    凉鞋的 Unity 笔记 203. 变量的常用类型
    代码随想录二刷7.22|977.有序数组的平方
    c++11 动态内存管理 -未初始化存储
    谷歌关于视频无法自动播放问题
    Linux-centos7自我学习
    智能算法学习指导
    现货白银的代码为什么不是ag
  • 原文地址:https://blog.csdn.net/weixin_46439070/article/details/126875723