Re: Migrating an Application from SQL Server 2000 to Oracle 10g
From: DA Morgan <damorgan_at_psoug.org>
Date: Mon, 21 Jul 2008 18:01:52 -0700
Message-ID: <1216688508.23531@bubbleator.drizzle.com>
>
> BTW Daniel there is one thing with your excellent comparison paper -
> SQL Server 2005 of course doesn't have Hierarchical queries in form of
> start with ..connect by, but recursive queries can be performed using
> common table expressions (in oracle world these are called subquery
> factoring or WITH clause). So in general recursive queries are
> available also in SQL Server just with different mechanism.
> And I've also looked a bit in SQL Server 2008. It has quite nice Merge
> statement wich it seems works smarter than Oracle Merge (for example
> does only delete and not at first update and then delete).
>
> Gints Plivna
> http://www.gplivna.eu
Date: Mon, 21 Jul 2008 18:01:52 -0700
Message-ID: <1216688508.23531@bubbleator.drizzle.com>
Gints Plivna wrote:
>> I just completed a review of a massive amount of SQL Server 2008 >> docs and have an installed copy of the product that I am using >> to create a similar mapping page for the newest version. But, >> again, I see nothing like autonomous transactions, exception_init, >> serially reusable, or inline in the product.
>
> BTW Daniel there is one thing with your excellent comparison paper -
> SQL Server 2005 of course doesn't have Hierarchical queries in form of
> start with ..connect by, but recursive queries can be performed using
> common table expressions (in oracle world these are called subquery
> factoring or WITH clause). So in general recursive queries are
> available also in SQL Server just with different mechanism.
> And I've also looked a bit in SQL Server 2008. It has quite nice Merge
> statement wich it seems works smarter than Oracle Merge (for example
> does only delete and not at first update and then delete).
>
> Gints Plivna
> http://www.gplivna.eu
The comparison could have been far more complete but I was trying to hit the items where I could name a specific piece of syntax that performed a specific function rather than something that might be used for multiple purposes like the WITH clause. For example on the Oracle side I didn't get into RAC, Flashback, etc. all of which have no SQL Server equivalents.
One can always avoid the update with Oracle's merge by doing something with a bit of creativity similar to the old WHERE 1=2.
-- Daniel A. Morgan Oracle Ace Director & Instructor University of Washington damorgan_at_x.washington.edu (replace x with u to respond) Puget Sound Oracle Users Group www.psoug.orgReceived on Mon Jul 21 2008 - 20:01:52 CDT