MySQL和Oracle的区别与不同
一、mysql与Oracle的相同点:
1、都是关系型数据库管理系统(MySQL开放源码)
2、都是目前很流行的数据库(Oracle以分布式为核心);
二、MySQL、Oracle各自特点:
1、Oracle自身特点:
(1)、完整的数据管理功能:
1)、数据的大量性;
2)、数据的保存的持久性;
3)、数据的共享性;
4)、数据的可靠性;
(2)、完备关系的产品 :
1)、信息准则---关系型DBMS的所有信息都应在逻辑上用一种方法,即表中的值显式地表示;
2)、保证访问的准则;
3)、视图更新准则---只要形成视图的表中的数据变化了,相应的视图中的数据同时变化;
4)、数据物理性和逻辑性独立准则;
(3)、分布式处理功能: ORACLE数据库自第5版起就提供了分布式处理能力,到第7版就有比较完善的分布式数据库功能了,一个ORACLE分布式数据库由oraclerdbms、sql*Net、SQL*CONNECT和其他非ORACLE的关系型产品构成。
4、用Oracle能轻松的实现数据仓库的操作 Oracle自身的优点:
1、可用性强;
2、可扩展性强;
3、数据库安全性强;
4、稳定性强;
MySQL自身特点:
MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。
三、两者数据库不同点:
1.单引号的处理 Mysql里可以用双引号包起字符串,Oracle里只可以用单引号包起字符串。在插入和修改字符串前必须做单引号的替换:把所有出现的一个单引号替换成两个单引号。
2.自动增长的数据类型处理 Mysql是一个自动增长的数据类型,插入数据的时候,不需要管理,它自己会自动增长,Oracle不支持自动增长的数据类型,通过建立一个自动增长的序列号来完成自动增长。
3.sql语句的扩展和灵活性 Mysql对sql语句有很多非常实用而方便的扩展,比如limit功能,insert可以一次插入多行数据,select某些管理数据可以不加from。 Oracle在这方面感觉更加稳重传统一些。
4.事物提交方式 oracle默认不自动提交,需要用户手动提交。 Mysql默认是自动提交。不支持事物。 Mysql默认自动提交,也就是你提交一个query,它就直接执行,我们可以通过
set autocommit=0 禁止自动提交
set autocommit=1 开启自动提交
5.Oracle是大型数据库而Mysql是中小型数据库,Oracle市场占有率达40%,Mysql只有20%左右,同时Mysql是开源的而Oracle价格非常高。
6. Oracle支持大并发,大访问量,是OLTP(On-Line Transaction Processing联机事务处理系统)最好的工具。
7. 安装所用的空间差别也是很大的,Mysql安装完后才152M而Oracle有3G左右,且使用的时候Oracle占用特别大的内存空间和其他机器性能。
8. 长字符串的处理 长字符串的处理ORACLE也有它特殊的地方。INSERT和UPDATE时最大可操作的字符串长度小于等于4000个单字节, 如果要插入更长的字符串, 请考虑字段用CLOB类型,方法借用ORACLE里自带的DBMS_LOB程序包。插入修改记录前一定要做进行非空和长度判断,不能为空的字段值和超出长度字段值都应该提出警告,返回上次操作。
9. 空字符的处理 Mysql的非空字段也有空的内容,ORACLE里定义了非空字段就不容许有空的内容。按Mysql的NOT NULL来定义Oracle表结构, 导数据的时候会产生错误。因此导数据时要对空字符进行判断,如果为NULL或空字符,需要把它改成一个空格的字符串。
10.字符串的模糊比较 Mysql里用 字段名 like ‘%字符串%’;
Oracle里也可以用 字段名 like ‘%字符串%’ 但这种方法不能使用索引, 速度不快。
11.翻页的SQL语句的处理
MySQL处理翻页的SQL语句比较简单,用LIMIT开始位置,记录个数;PHP里还可以用 SEEK定位到结果集的位置。Oracle处理翻页的SQL语句就比较繁琐了。每个结果集只有一个ROWNUM字段标明它的位置,并且只能用ROWNUM<100,不能用ROWNUM>80。
MySQL和Oracle的区别与不同的更多相关文章
- 转载文章 MySQL与Oracle的区别
		
MySQL与Oracle的区别 1. Oracle是大型数据库而Mysql是中小型数据库,Oracle市场占有率达40%,Mysql只有20%左右,同时Mysql是开源的而Oracle价格非常高 ...
 - mysql和 oracle 的区别
		
垂直拆分: 把一个数据库中不同业务单元的数据分到不同的数据库里面.水平拆分: 根据一定的规则把同一业务单元的数据拆分到多个数据库中. 读写分离 主:写 从:查 ==================== ...
 - MySQL与Oracle的区别
		
1.语法上的区别 变量类型定义.IN OUT的位置.变量定义的位置.游标的位置.异常的位置: 2.MySQL没有 return 关键字,采用leave label的方式结束循环或跳出存储 3.异常处 ...
 - 开发中mysql和oracle的区别
		
首先就不描述mysql与oracle在整个数据库系统上的区别了,仅从程序员开发的角度来说: 1.主键: mysql一般会用到一个自增的属性,例如设置一个id字段,类型设置为auto increment ...
 - MySql与Oracle的区别总结
		
在平时工作中使用这两个数据库的时候要多一些,这两数据库的使用方面存在的一些各自不同的地方,许多面试官也会问这两个的区别.所以,凭着自己的一些经验个感触,来说说这二者的区别. 使用的群众:MySql中小 ...
 - Mysql 和Oracle rows 区别
		
mysql> explain select t1.* from t2 ,t1 where t2.id=t1.id and t2.id<3;\ +----+-------------+--- ...
 - MySql和Oracle数据库区别
		
Oracle与mysql区别: 1.Oracle有表空间,mysql没有表空间. 2.mysql的char类型取值范围0-255字节,varchar为0-65535字节 3.oracle的char类型 ...
 - MySQL和Oracle的区别
		
由于SQL Server不常用,所以这里只针对MySQL数据库和Oracle数据库的区别 (1) 对事务的提交 MySQL默认是自动提交,而Oracle默认不自动提交,需要用户手动提交,需要在写 ...
 - mysql与Oracle的区别:
		
1. Oracle是大型数据库而Mysql是中小型数据库,Oracle市场占有率达40%,Mysql只有20%左右,同时Mysql是开源的而Oracle价格非常高. 2. Oracle支持大并发,大 ...
 
随机推荐
- PHP全栈学习笔记20
			
thinkphp概述,thinkphp项目构建流程,thinkphp项目结构,thinkphp配置,thinkphp控制器,thinkphp模型,thinkphp视图,thinkphp的内置模板引擎. ...
 - 【原创】导出aws ec2为csv
			
1.安装 pip install boto3 csv 2.使用脚本更新秘钥和地区 # 导出aws ec2列表为cvs import boto3 import csv ec2 = boto3.cl ...
 - C++11多线程std::thread创建方式
			
//#include <cstdlib> //#include <cstdio> //#include <cstring> #include <string& ...
 - 在学习ROS过程中碰到的一些问题--1
			
好了,这是接触ROS的第三周了,初步了解了一下ROS,很多问题自己还是无法解决,但是想着很久没有在blog上记录自己的学习过程,就先胡乱写一下吧.^-^ 1.关于ROS各种基本概念的理解 这方面知识建 ...
 - int(“1.6”),int(1.6)输出结果?
			
>>> int("1.6") Traceback (most recent call last): File , in <module> ValueE ...
 - vue 传参props里面为什么要带type,还有default?
			
这个是子组件啦 ,写type的意思是swiperDate传过来的数据类型是数组,default就是表示不传默认返回的[ ],空数组. 这种就是表示传的数据类型是number,不传默认是0.
 - 走进JavaWeb技术世界8:浅析Tomcat9请求处理流程与启动部署过程
			
谈谈 Tomcat 请求处理流程 转自:https://github.com/c-rainstorm/blog/blob/tomcat-request-process/reading-notes &l ...
 - macbook配置flutter环境变量
			
打开命令窗口,如果没有文件的,可以手动创建文件 code ~/.bash_profile 打开的文件内容如下,如果新增的空文件,肯定是空白的 如果将flutter存放到了应用中,可以如下操作,如果不是 ...
 - BitmapShader填充图形
			
package com.loaderman.customviewdemo; import android.content.Context; import android.graphics.*; imp ...
 - [Java复习] 设计模式 Design Pattern
			
设计模式的六大原则 1.开闭原则(Open Close Principle) 对扩展开放,对修改关闭. 2.里氏代换原则(Liskov Substitution Principle) 任何基类可以出现 ...