oraclesqlservermysql与db2的比较 - oracle 开发

合集下载

db2和oracle的一些区别

db2和oracle的一些区别
.........
END PRO1;
3、控制语句的不同
db2: IF THEN ......ELSEIF THEN .... END IF;
oracle: IF THEN ......ELSIF THEN .... END IF;
db2:CREATE PROCEDURE PRO1()
LANGUAGE SQL
P1: BEGIN
--变量定义
DECLARE INSERT_DATE TIMESTAMP;
2)同时作为输入输出参数的写法不同
db2: CREATE PROCEDURE PRO1 (INOUT OrgID int) INOUT连着写
oracle:CREATE PROCEDURE PRO1 (OrgID IN OUT int) IN OUT中间空格隔开,而且必须IN在OUT之前
1、创建PROCEDURE的参数的区别
1)参数类型和参数名称的位置不同
db2: CREATE PROCEDURE PRO1 (IN OrgID int)
oracle:CREATE PROCEDURE PRO1 (OrgID IN int)
db2中变量定义在BEGIN END体内,并且每个变量都要用DECLARE声明;存储过程结束时,END后跟P1,并且不需要分号
oracle中变量定义必须在BEGIN END体外,变量都不需要用DECLARE声明(有种说法是,第一个变量需要DECLARE,其他变量不需要);存储过程结束时,END后跟存储过程的名称,并且需要分号
3)没有输入或输出参数时
db2:ห้องสมุดไป่ตู้ CREATE PROCEDURE PRO1 ()

关系型数据库管理系统SQL Server和DB2之比较

关系型数据库管理系统SQL Server和DB2之比较

理或混合在 线分析处理分割 、 分布式分割单 元 、 持续计算 和预制缓 存等
特性 , 极大地提升了其分析 服务器 的可伸缩性 。而在 D 2 B 中早已经使用
了 S ae — ohn hrd N tig构架 以有效允许 数据库 增长超 出单 台服务 器 的功能
N 等等 。同时也支持多种硬件 平台 , T 包括 I M大型机 、C服务器等 。 B P 最 适用于海量数据处理, 并且可跨平 台等等 。这些优点使 D 2 B 在企业级 的
Widw 客户 . no s 可以用 AD D O, L DB OD C连接 ; D 2跨 平 台 , O, A 0 E , B 而 B 多层次结构 。 支持 O B J B D C,D C等客户。
据 库管理 系统 。新版的 S L e e 的可用性得 到进一 步提高 , Q rr Sv 安全性得
关 系型数据库 管理 系统 S LSre 和 D 2之 比较 Q evr B
袁 开艳 , 静 罗
( 九江学 院电子工程学 院, 江西九江 ,3 0 5 32 0 )
摘 要 :对 比研 究 了 S LS ̄e 数 据 库 和 D 2数据 库 两种 关 系型 数 据 库 管 理 系统 。 Q e r B 指
0 ,o , M/ MS V E, S2以及 U i s4 o V E , S 0 , nx环境 中的 HP U — X客户 杌胡匣 务器
定风险。D 2长期在大型企业 中得 到广泛应用 , B 经过无数次的验证 , 风
险小且向下兼容性好 。而 D 2的软件开发实验室早在 19 B 9 4年便 已经通 过了 1O 90 S 0 0国际质量管理标准 的验 证与认可 ,因而其软件可靠性较 高, 故障率低 。 可伸缩性及并行性方面 ,Q re 并行实施 和共存模型 不很成熟 , S LS v r e 很难处理 1 3益增多的用户数 和数据卷 ,伸缩性 有限 ;但新 版本 的 S L Q ev 增 Sr r 加了商业智能使其能并行分割处理 ,创建远 程关 系在线分析处 e

数据库管理系统比较MySQLvsOraclevsSQLServer

数据库管理系统比较MySQLvsOraclevsSQLServer

数据库管理系统比较MySQLvsOraclevsSQLServer 数据库管理系统比较:MySQL vs Oracle vs SQL Server引言:数据库管理系统是现代信息技术领域中不可或缺的一环。

随着数据量的急剧增加和数据库应用的广泛应用,选择适合自己需求的数据库管理系统变得至关重要。

在本文中,我们将比较三种常见的数据库管理系统:MySQL、Oracle和SQL Server。

通过对比它们的性能、功能、可扩展性和使用成本,为读者提供一个更好地了解和选择的依据。

一、性能比较在数据库管理系统中,性能是一个至关重要的因素。

下面将对MySQL、Oracle和SQL Server的性能进行比较。

1.1 MySQL性能MySQL是一个轻量级的开源数据库管理系统,以其高性能而闻名。

它采用多线程处理机制和高效的索引算法,能够处理大规模的数据访问和高并发请求。

此外,MySQL还支持垂直和水平扩展,可根据实际需求进行灵活配置和调整。

因此,在对于大多数中小型应用来说,MySQL提供了相对较好的性能。

1.2 Oracle性能Oracle是一个功能强大且成熟的商业数据库管理系统。

它具有出色的性能,并且能够处理大规模的复杂数据模型。

Oracle采用了先进的事务处理机制和高效的查询优化算法,使其在处理高并发访问和复杂查询时具有出色的性能表现。

然而,Oracle的性能和功能也伴随着更高的硬件要求和许可成本。

1.3 SQL Server性能SQL Server是由微软公司开发的关系型数据库管理系统。

它在处理大规模数据时表现出色,并且支持高并发访问和复杂查询。

SQL Server 采用了先进的内存管理和缓存技术,以提高查询速度和响应时间。

此外,SQL Server还具有良好的稳定性和可靠性,适用于中小型企业的应用场景。

综合比较,MySQL适用于中小型应用,对性能要求较高且成本敏感的场景;Oracle适用于大规模企业级应用,对功能和可靠性要求较高的场景;SQL Server适用于中小型企业应用,对性能和稳定性要求较高的场景。

主流数据库SQL SERVER、DB2、MY SQL、SYSBASE和Oracle的产生、发展和各自的优势是什么?

主流数据库SQL SERVER、DB2、MY SQL、SYSBASE和Oracle的产生、发展和各自的优势是什么?

Oracle平时作业第一次目录一.目前主流数据库SQL SERVER、DB2、MY SQL、SYSBASE和Oracle的产生、发展和各自的优势是什么?请加以比较。

(2)1.1 SQL SERVER: (2)1.1.1产生 (2)1.1.2发展 (2)1.1.3优缺点 (3)1.2 DB2: (4)1.2.1产生 (4)1.2.2发展: (4)1.23优缺点: (8)1.3 MYSQL (9)1.3.1产生 (9)1.3.2发展 (9)1.3.3 优缺点 (11)1.4 SYSBASE (11)1.4.1产生 (11)1.4.2发展: (12)1.4.3优缺点 (12)1.5 Oracle: (12)1.5.1产生 (12)1.5.2发展 (12)1.5.3优缺点 (13)二,用户的系统权限有哪些?分别有什么功能?用户的对象权限有哪些?用户的系统角色有哪些?分别有什么功能? (14)2.1系统的权限及功能: (14)2.1.1群集权限及功能 (14)2.1.2数据库权限及功能 (14)2.1.2索引权限及功能 (14)2.1.3过程权限及功能 (15)2.1.4概要文件权限及功能 (15)2.1.5角色权限及功能 (15)2.1.6回退段权限及功能 (16)2.1.7序列权限及功能 (16)2.1.8会话权限及功能 (16)2.1.9同义词权限及功能 (17)2.1.10表权限及功能 (17)2.1.11表空间权限及功能 (18)2.1.12用户权限及功能 (18)2.1.13视图权限及功能 (18)2.1.14触发器权限及功能 (19)2.1.15专用权限及功能 (19)2.1.16其他权限及功能 (20)2.2用户权限 (20)2.3用户的系统角色及功能 (21)2.3.1、用户与模式 (21)2.3.2、创建及修改用户 (21)一.目前主流数据库SQL SERVER、DB2、MY SQL、SYSBASE 和Oracl e的产生、发展和各自的优势是什么?请加以比较。

SQLServer,MySQL,Oracle三者的区别

SQLServer,MySQL,Oracle三者的区别

SQLServer,MySQL,Oracle三者的区别目录1 Oracle、Sql Server、MySql简介1.1 Oracle1.2 SQL Server1.3 MySQL2 Oracle和MySQL的主要区别2.1 客户端和命令窗口2.2 市场占有率及其他2.3 Oracle也与MySQL操作上的一些区别2.3.1 组函数用法规则2.3.2 自动增长的数据类型处理2.3.3 主键2.3.4 单引号的处理2.3.5 翻页的SQL语句的处理2.3.6 长字符串的处理2.3.7 日期字段的处理2.3.8 空字符的处理2.3.9 字符串的模糊比较1 Oracle、Sql Server、MySql简介返回1.1 OracleOracle 能在所有主流平台上运行(包括Windows)。

完全支持所有的工业标准。

采用完全开放策略。

可以使客户选择最适合的解决方案。

对开发商全力支持,Oracle并行服务器通过使一组结点共享同一簇中的工作来扩展Windows NT的能力,提供高可用性和高伸缩性的簇的解决方案。

如果Windows NT不能满足需要,用户可以把数据库移到UNIX中。

Oracle的并行服务器对各种UNIX平台的集群机制都有着相当高的集成度。

Oracle获得最高认证级别的ISO标准认证.Oracle性能最高,保持开放平台下的TPC-D和TPC-C的世界记录Oracle多层次网络计算,支持多种工业标准,可以用ODBC、JDBC、OCI等网络客户连接。

Oracle 在兼容性、可移植性、可联结性、高生产率上、开放性也存在优点。

Oracle产品采用标准SQL,并经过美国国家标准技术所(NIST)测试。

与 IBM SQL/DS,DB2,INGRES,IDMS/R等兼容。

Oracle的产品可运行于很宽范围的硬件与操作系统平台上。

可以安装在70种以上不同的大、中、小型机上;可在VMS、DOS、UNIX、WINDOWS等多种操作系统下工作。

常见数据库优缺点对比

常见数据库优缺点对比

全性 SQL server 没有获得任何安全证书。 Oracle Server 获得最高认证级别的ISO标准认证。 DB2 获得最高认证级别的ISO标准认证
能 SQL Server 多用户时性能不佳 racle 性能最高, 保持windowsNT下的TPC-D和TPC-C的世界记录。B2 适用于数据仓库和在线事物处理性能较高。
SQL Server 2016最值得关注的10大新特性
全程加密技术(Always Encrypted)
动态数据屏蔽(Dynamic Data Masking)
JSON支持
多TempDB数据库文件
PolyBase
Query Store
行级安全(Row Level Security)
SQL SERVER支持R语言
伸缩性,并行性 SQL server 并行实施和共存模型并不成熟。很难处理日益增多的用户数和数据卷。伸缩性有限。 Oracle平行服务器通过使一组结点共享同一簇中的工作来扩展windownt的能力,提供高可用性和高伸缩性的簇的解决方案。如果windowsNT不能满足需要, 用户可以把数据库移到UNIX中。 DB2 B2具有很好的并行性。DB2把数据库管理扩充到了并行的、多节点的环境。数据库分区是数据库的一部分,包含自己的数据、索引、配置文件、和事务日志。数据库分区有时被称为节点或数据库节点。
SQL Server
Microsoft SQL Server是微软公司开发的大型关系型数据库系统。SQL Server的功能比较全面,效率高,可以作为中型企业或单位的数据库平台。SQL Server可以与Windows操作系统紧密集成,不论是应用程序开发速度还是系统事务处理运行速度,都能得到较大的提升。对于在Windows平台上开发的各种企业级信息管理系统来说,不论是C/S(客户机/服务器)架构还是B/S(浏览器/服务器)架构,SQL Server都是一个很好的选择。SQL Server的缺点是只能在Windows系统下运行。 1987 年,微软和IBM合作开发完成OS/2,IBM 在其销售的OS/2 ExtendedEdition 系统中绑定了OS/2Database Manager,而微软产品线中尚缺少数据库产品。为此,微软将目光投向Sybase,同Sybase 签订了合作协议,使用Sybase的技术开发基于OS/2平台的关系型数据库。1989年,微软发布了SQL Server 1.0 版。 Microsoft在与Sybase分道扬镳后,随后在其6.05和7.0版本中重写了核心数据库系统。

DB2和ORACLE的印象比较

DB2和ORACLE的印象比较
DB2和ORACLE的印象比较
一个项目需要DB2,以前没用过,用了WINDOWS 2008下的DB29.7 好几周,算入门了吧,下面这文章就当一个ORACLE使用者眼里的DB2的印象吧,也许有些东西可能有偏差,但是就是我自己的印象:
1、体系结构,DB2的实例和数据库分开的做法,我个人还是比较喜欢的,因为实例可以创建多个,数据库的恢复直接恢复到实例下就可以了,相对ORACLE简单多了。
17、再补充一点,DB2的在线文档有全中文的,快速入门什么的写得很不错,ORACLE这方面就差点了,不过想深入了解啥,还是要看E文。
18、DB2可是要许可证的呀,没有许可证,只能用90天,这个我觉得很不爽
8、DB2的远程网络连接采用的编目方式描述连接串的方式我感觉很不爽,为了改个客户端的连接服务器的IP地址,所有的客户端都需要将编目删除,然后重新编目连接地址,晕倒100多台PC机搞下来,尽管可以使用脚本,但是还是把人都快搞疯了。ORACLE采用的用文件来配置远程服务器的方式,所有的PC机都通过更新服务器直接更新本机的TNSNAME,1分钟搞定。
12、DB2的锁自动管理机制,我比较喜欢,打开后,互锁的概率大大降低,相同的程序,在DB2下锁明显少许多,但是不爽的是DB2的select命令也是加锁的。
13、DB2 9.7的ORACLE兼容模式,我也很喜欢,迁移麻烦少了许看要比ORACLE 要强一些,几乎所有的内存参数都能自动管理,ORACLE11G貌似也可以全部自动管理了。
4、DB2的命令执行方式,我很喜欢,可以在命令行上执行SQL,也可以在命令窗口上执行SQL,相对SQLPLUS灵活多了;
5、DB2的自动维护功能做的很好,可以定期自动整理数据库碎片和重建索引,唯一不大理想的是自动维护的备份功能不能指定压缩备份,相对而言ORACLE的自动维护功能就很一般了;

DB2和Oracle的区别

DB2和Oracle的区别

例子:如上图,从grandchild开始查询其所有的父节点,首先设定虚拟表起点,即左边第四行;依次往上推,其父亲是son = 上一行的child,即VT.parent = T.child...最后查询结果为:---------------------------sonfathergrandpaDB2、ORACLE SQL写法的主要区别说实话,ORACLE把国内的程序员惯坏了,代码中的SQL充斥着大量ORACLE 特性,几乎没人知道ANSI的标准SQL是什么样子,导致程序脱离了ORACLE 根本无法运行,还好随着hibernate的流行,情况有了很大改观DB2作为众多国际大客户的选择(据说世界500强80%用DB2,前100强更是全部采用DB2),在国内真的很不流行,属于小众数据库,但是没办法,现在的项目要用DB2,所以不得不面对熟悉ORACLE的开发同事们写出的“ORACLE版代码”,众多的兼容性问题搞得很是头大,遂整理了一份经常遇到的兼容性问题列表供大家参考,貌似最近问题少了些,但愿这个势头能继续下去1、数据类型转换函数2、Where条件弱类型判断oracle: where 字符型字段in (整形) 是允许,DB2不允许select 'abc' from dual where '1' in (1) 在oracle下可通过select 'abc' from sysibm.sysdummy1 where '1' in (1) 在DB2下报错oracle:where 字符型字段=数字型字段允许,DB2不允许select 'abc' from dual where '1'=1 在oracle下可通过select 'abc' from sysibm.sysdummy1 whre '1'=1 在DB2下报错3、replace关键字oracle支持,DB2不支持create or replace语句在DB2下是非法的4、子查询别名ORACLE 支持select * from(select 1 from dual) 或者select *from(select 1 from dual) tDB2支持select * from(select 1 from sysibm.sysdummy1) t 或者select * from(select 1 from sysibm.sysdummy1) as t固兼容的写法是select * from(子查询) t5、DATE数据类型的区别ORACLE中DATE型也是带有时分秒的,但DB2下DATE只是年月日,如'2007-04-28',且可作为字符串直接操作,DB2中要记录时分秒必须采用TIMESTAMP型一个采用hibernate后常见的兼容问题是:如果在映射文件中定义了某个字段为Date型<property name="createTime" type="java.util.Date" ><column name="CREATE_TIME" length="7" /></property>则在DB2下,此字段必须定义为timestamp,而不能定义成DATE,不然会报出字符串右截断的错误对于DB2来说,在查询条件中可以直接用字符串指定日期或时间戳类型字段的值,例如where create_date = '2007-04-26' 、wherecreate_timestamp = '2007-04-26 08:08:08' ,无须使用字符串转日期函数6、分页的处理如果采用JDBC分页的话,注意rownum在DB2中不受支持,比如从masa_area表中取得area_id最小的10条记录,语句分别如下,注意这里的别名t书写方法ORACLE: select t.* from (select rownum as r1 ,masa_area.* from masa_area order by area_id) t where t.r1<=10DB2: select t.* from (select rownumber() over() as r1 ,masa_area.* from masa_area order by area_id) t where t.r1<=107、decode函数
decode函数在DB2不被支持,兼容的写法是采用case when8、NVL函数
nvl写法在DB2不被支持,兼容的写法是采用coalesce ORACLE: select NVL(f_areaid,'空') from masa_user等同于select coalesce(f_areaid,'空',f_areaid) from masa_userDB2: select coalesce(f_areaid,'空',f_areaid) from masa_user9、substr的不同DB2substr举例如下:masa_group表的f_groupCode字段定义成VARCHAR(100),所以下面这个语句不会出错,如果是substr(f_groupCode,1,101)就出错了select * from masa_group where substr(f_groupCode,1,50) ='001006' order by f_groupcode在DB2下无错,但是select * from masa_group where substr('001006', 1, 50) = '001006' order by f_groupcode就报错,说第三个参数超限这是因为'001006'已经定义为一个长度为6的charater了这点和ORACLE有很大不同,请大家注意如果是要从第一位取到最后一位,稳妥的办法是不要加第三个参数ORACLE:select substr('123456',1) from dualDB2:select substr('123456',1) from sysibm.sysdummy1都没有问题10、获取操作系统当前日期ORACLE SysdateDB2CURRENT DATE。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ORACLE、SQLSERVER、MYSQL与DB2的比较- Oracle
开发
比较SQL Server与Oracle、DB2
出处:不祥
关键词:Sql Server, Oracle, 其他1.选择一个好的数据库是非常重要的。

2.如何选择一个好的数据库开放性: SQL Server
只能在windows 上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的。

Windows9X系列产品是偏重于桌面应用,NT server只适合中小型企业。

而且windows平台的可靠性,安全性和伸缩性是非常有限的。

它不象unix那样久经考验,尤其是在处理大数据量的关键业务时. Oracle
能在所有主流平台上运行(包括windows)。

完全支持所有的工业标准。

采用完全开放策略。

可以使客户选择最适合的解决方案。

对开发商全力支持。

DB2
能在所有主流平台上运行(包括windows)。

最适于海量数据。

DB2在企业级的应用最为广泛,在全球的500家最大的企业中,几乎85%以上用DB2数据库服务器,而国内到97年约占5%. 可伸缩性,并行性
SQL server
DB2
并行实施和共存模型并不成熟。

很难处理日益增多的用户数和数据卷。

伸缩性有限。

Oracle
平行服务器通过使一组结点共享同一簇中的工作来扩展windownt的能力,提供高可用性和高伸缩性的簇的解决方案。

如果windowsNT不能满足需要, 用户可以把数据库移到UNIX中。

DB2
DB2具有很好的并行性。

DB2把数据库管理扩充到了并行的、多节点的环境.
数据库分区是数据库的一部分,包含自己的数据、索引、配置文件、和事务日
志。

数据库分区有时被称为节点或数据库节点安全性
SQL server
没有获得任何安全证书。

Oracle Server
获得最高认证级别的ISO标准认证。

DB2
获得最高认证级别的ISO标准认证。

性能
SQL Server
多用户时性能不佳Oracle
性能最高,保持windowsNT下的TPC-D和TPC-C的世界记录。

DB2
适用于数据仓库和在线事物处理性能较高。

客户端支持及
应用模式
SQL Server
C/S结构,只支持windows客户,可以用
ADO,DAO,OLEDB,ODBC连接. Oracle
多层次网络计算,支持多种工业标准,可以用
ODBC,JDBC,OCI等网络客户连接DB2
跨平台,多层结构,支持ODBC,JDBC等客户操作简便SQL Server
操作简单,但只有图形界面. Oracle
较复杂, 同时提供GUI和命令行,在windowsNT和unix下操作相同DB2
操作简单,同时提供GUI和命令行,在windowsNT和unix 下操作相同使用风险
SQL server
完全重写的代码,经历了长期的测试,不断延迟,许多功能需要时间来证明。

并不十分兼容早期产品。

使用需要冒一定风险。

Oracle
长时间的开发经验,完全向下兼容。

得到广泛的应用。

完全没有风险。

DB2
在巨型企业得到广泛的应用,向下兼容性好。

风险小。

相关文档
最新文档