关系型数据库(Oracle与MySQL优缺点、使用区别)
MySQL的特点:
1. 性能卓越,服务稳定,很少出现异常宕机;
2. 开放源代码无版本制约,自主性及使用成本低;
3. 历史悠久,社区和用户非常活跃,遇到问题及时寻求帮助;
4. 软件体积小,安装使用简单且易于维护,维护成本低;品牌口碑效应;
5. 支持多种OS,提供多种API接口,支持多种开发语言,对流行的PHP,JAVA很好的支持。
1
2
3
4
5
6
7
8
9
MySQL的缺点:
1. MySQL最大的缺点是其安全系统,主要是复杂而非标准,另外只有到调用mysqladmin来重读用户权限时才发生改变。
2. MySQL的另一个主要的缺陷之一是缺乏标准的RI(Referential Integrity-RI)机制;Rl限制的缺乏(在给定字段域上的一种固定的范围限制)可以通过大量的数据类型来补偿。
3. MySQL没有一种存储过程(Stored Procedure)语言,这是对习惯于企业级数据库的程序员的最大限制。
4. MySQL不支持热备份。
1
2
3
4
5
6
7
Oracle的特点:
1. 兼容性:Oracle产品采用标准SQL,并经过美国国家标准技术所(NIST)测试。与IBM SQL/DS、DB2、INGRES、IDMS/R等兼容。
2. 可移植性:Oracle的产品可运行于很宽范围的硬件与操作系统平台上。可以安装在多种大、中、小型机上;可在多种操作系统下工作。
3. 可联结性:Oracle能与多种通讯网络相连,支持各种协议。
4. 高生产率:Oracle产品提供了多种开发工具,能极大地方便用户进行进一步的开发。
5. 开放性:Oracle良好的兼容性、可移植性、可连接性和高生产率使Oracle RDBMS具有良好的开放性。
1
2
3
4
5
6
7
8
9
Oracle的缺点:
1. 对硬件的要求很高;
2. 价格比较昂贵;
3. 管理维护麻烦一些;
4. 操作比较复杂,需要技术含量较高;
1
2
3
4
MySQL与Oracle的应用区别:
1. 主键的使用:
MySql:一般使用自动增长类型,在创建表的时候只要指定表的主键为auto increment,插入记录时就不需要再为主键添加记录了,主键会自动增长。
Oracle:没有自动增长,主键一般使用序列,插入记录时将序列号的下一值付给该字段即可,
只是ORM框架只是需要native主键生成策略即可。
2. 长字符串的处理:
长字符串的处理ORACLE也有它特殊的地方。INSERT和UPDATE时最大可操作的字符串长度小于等于4000个单字节,
如果要插入更长的字 符串,请考虑字段用CLOB类型,方法借用ORACLE里自带的DBMS_LOB程序包。插入修改记录
前一定要做进行非空和长度判断,不能为空的字段值和 超出长度字段值都应该提出警告,返回上次操作。
3. 模糊查询的比较:
MYSQL:用字段名like%‘字符串%’
ORACLE:也可以用字段名like%‘字符串%’但这种方法不能使用索引,速度不快,用字符串比较函数
instr(字段名,‘字符串’)>0会得到更精确的查找结果。
4. 空字符串的比较:
MYSQL的非空字段也有空的内容,ORACLE里定义了非空字段就不容许有空的内容。按MYSQL的NOT NULL来定义ORACLE表结构,
导数据的时候会产生错误。因此导数据时要对空字符进行判断,如果为NULL或空字符,需要把它改成一个空格的字符串。
5. 单引号的处理:
MYSQL里可以用双引号包起字符串,ORACLE里只可以用单引号包起字符串。在插入和修改字符串前必须做单引号的替换:
把所有出现的一个单引号替换成两个单引号。
---------------------
作者:郑吉责
原文:https://blog.csdn.net/qq_36484611/article/details/86499232
版权声明:本文为博主原创文章,转载请附上博文链接!