Why do most organizations use Oracle?

Page 2 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.

torpid

Lifer
Sep 14, 2003
11,631
11
76
I have used db2, oracle, and sql server extensively, and I don't agree with any of the pro-db2 arguments above. Db2 is slightly more scaleable here but that is because it is sitting on a powerhouse mainframe machine. Oracle is extremely fast as well.

I would never, ever recommend using db2 to anyone over oracle as a blanket rule. There are certain instances where it makes sense, but there are tons and tons of them where it doesn't.

We aren't using the latest db2, but then again we aren't using the latest oracle. The db2 we use has major problems with the way it analyzes queries. Rather than use true optimizer hints, it "allows" you to do ridiculous things in your query that in fact should NOT be ways to signal the system to not use indexes. For example, SELECT FOO FROM BAR WHERE (A = 'FooBar' or 0 = 1). A good optimizer will ignore the 0 = 1 since it is always false and still use an index on A. Not DB2, that's their idea of an "optimizer hint".

It has completely crappy support for XML and ODBC/JDBC. In Oracle and SQL Server, you can have named placeholders in your SQLs, e.g. SELECT FOO FROM BAR WHERE A = :AFooValue. In DB2 you have to use ?. This makes architecting a data layer much more annoying and prone to problems. You must go to great lengths to not have your business layer tied to your particular DBMS, because with ? you must pass parameters in the exact order that they are present in the SQL, and if you have the same "parameter" twice, you must pass it twice. You can get around this with some architecture changes, but it's not pretty.

The development tools supplied with Db2 are awful. I'm not sure they are even better than nothing at all.

IBM also is notorious here (where we have been using db2 products for over 10 years) for releasing patches that cause a lot of problems. We had a version of db2 connect that actually was causing the db2 service to CRASH. Let's not even mention that the products written BY IBM for db2 often don't work. For example, the .net db2 drivers. There are several bugs in them that make it so we must also use ODBC connections at times because the native drivers are sending invalid CLI.

We have none of these problems with Oracle. The closest thing to a problem was an early version of the .net Oracle drivers witten by MICROSOFT which would leave connections open and orphaned. Which was fixed within a few months.

I prefer SQL Server as a developer, but I definitely understand why people are hesitant to use it.
 

piroroadkill

Senior member
Sep 27, 2004
731
0
0
Something nobody else mentioned: Oracle sounds so much cooler than the other database servers. Face it.
 

OutHouse

Lifer
Jun 5, 2000
36,410
616
126
Originally posted by: Argo
Originally posted by: Citrix
Originally posted by: Electric Amish
Originally posted by: Argo
Originally posted by: lozina
If you do not know why Oracle is superior to its competitors then you really don't need to be using it.

Ok, give me one reason Oracle should be used over DB2.

Ok, how about the case where none of my software applications are compatible with DB2? Every app that I administrate requires one of these three: MS Access, SQL Server, Oracle. Period.

I'm not saying the DB2 is good or bad. This is just the reality.

I cant even think of one app that uses DB2.

On the other hand ever heard of Progress? Our main internal stuff runs on Progress but all the products we offer to our customers run on SQL.

From my 6 years of experience here, Progress is a fricken pain in the neck. something is always going wrong with a broker or whatever.

However SQL has been rock SOLID. we have over 20 SQL db's here and have never had any strange crap happen to a production db like we do for Progress.

Ever heard of a product called MQSI Broker? Almost every financial institution uses it and that uses DB2.

errr nope.
 

ultimatebob

Lifer
Jul 1, 2001
25,134
2,450
126
Yeah, pretty much every IBM application in existance uses DB2 in one way or another. WebSphere, Domino, Rational, and even Candle products recommend DB2 as their preferred database now.

That said... MOST of them work with SQL Server and Oracle too, but DB2 is usually the easiest one to impliment.