Oracle FAQ Your Portal to the Oracle Knowledge Grid

Home -> Community -> Usenet -> c.d.o.server -> Re: Db2, Oracle, SQL Server

Re: Db2, Oracle, SQL Server

From: Noons <>
Date: Mon, 07 Feb 2005 09:12:58 +1100
Message-ID: <>

Kenneth Koenraadt apparently said,on my timestamp of 7/02/2005 4:49 AM:

> snip of good info. Thanks.
> Apart from that, DB2 stores all it's undo info in the transaction
> logs. It has no rollback segments/undo tablespaces as in Oracle.

Yup, understood. I found it a big surprise when I first looked at DB2.

> In Oracle, Read consistency is a mantra. When transaction A updates a
> row, noone will ever be allowed to see the new values before
> committed. Period. You either see the old values before Transaction A
> or nothing.

as it should be. It's been a mantra of good database design - not just Oracle - since the days of old Codasyl and network model databases: if it ain't committed it ain't there, period.

> In DB2, it's the opposite, so to speak.

Ye Gawds! That was such a surprise.

> You can either choose to see the new uncommitted values by specifying
> "uncommitted read" in your quer or nothing at all. But there is no way
> to see the old values.

You see: this is where all this rigmarole of TPC benchmarks and other similar crap becomes totally useless. Something as fundamental as this is not even addressed or tested or stretched in all of those. They all work around the issue. It says lots for the kind of people who come up with the specs for these "standard benchmarks".

> No surprise, when Oracle developers turn to DB2 and vice versa, big
> confusion and surprises arise.

Bingo. Thank Codd for places like this where this information can be made available and freely discussed instead of being disguised behind "industry-standard benchmarks" and other similar piles of marketing rubbish.

Nuno Souto
in sunny Sydney, Australia
with a freakin' cold...
Received on Sun Feb 06 2005 - 16:12:58 CST

Original text of this message