例如,我主要使用Oracle,我看到其他人(MySQL,sql Server,Postgresql,…)无法做到:
> Connect by查询.
> Model查询.
> Flash back(查询,表和数据库).
与sql Server相同,其他人无法做到:
> Top results.
解决方法
Flashback是一个真正独特的Oracle功能,它反映了Oracle内置的内容. MVCC是如何处理并发的,而不是传统的悲观锁定;并发处理是数据库之间存在很大差异的地方之一(尽管大多数DBMS只是基于悲观锁定而脱离并发).在我看来,Oracle坚定地建立MVCC这个事实是一个很大的优势.
关于TOP结果:所有DBMS都有办法做到这一点.
除此之外:
以sql方式:Oracle具有最先进且符合标准的日期时间处理. Oracle在OLAP相关功能上很强大(但DB2和MSsql也是如此); OLAP功能是开放源代码数据库管理系统遇到困难的领域.最近,Oracle似乎基本上忽略了sql标准,因为它的标准合规性停滞不前(与MSsql相反,例如,在此已经有了很大的改进);由于甲骨文的市场份额很大,我对此傲慢不顾.
在概念上:Oracle和MysqL是处理数据库的两种非常不同的方法的例子.在Oracle中,创建数据库需要永远的时间,数据库是一个非常重的对象,所以在Oracle世界中,一个数据库往往包含很多表,可能在不同的“模式”中.在MysqL中,数据库是一个非常轻量级的对象,所以MysqLers倾向于拥有许多数据库,每个数据库的表格相对较少(这可能是他们似乎并不抱怨MysqL缺乏模式的原因).
Oracle(如DB2)是一个几乎包含整个操作系统的DBMS的示例:它执行许多功能,像MSsql / MysqL / Postgresql这样的DBMS将使操作系统的文件系统和虚拟内存系统处理.就个人而言,我更喜欢后一种方法,但Oracle的方式使得Oracle执行的功能非常相同,无论使用哪种操作系统.
与MSsql相比,Oracle运行在更多的平台上(像大多数其他DBMS一样; MSsql可能是仅在Windows上运行的唯一重要的DBMS).
与其他大多数DBMS相比,Oracle提供了一种集群方式:RAC.我听说过很多关于RAC的恐怖故事,但是如果你可以让它工作,可以说你有一个非常强大的(而且昂贵的)群集解决方案.
关于管理,与其他大多数DBMS相比,我发现Oracle的管理意外复杂.
那么,当然有定价差异很大,Oracle的定价非常高,而且上涨.