HiveBrain v1.2.0
Get Started
← Back to all entries
patternsqlModerate

Resources for SQL Server developer migrating to Oracle

Submitted by: @import:stackexchange-dba··
0
Viewed 0 times
sqlmigratingfordeveloperserverresourcesoracle

Problem

What resources can you recommend for a SQL Server developer wanting to learn Oracle basics?

I am looking for a comprehensive whitepaper or blog post describing differences between these systems and answering questions like How to create an IDENTITY column? or What data type is equivalent of float?.

Solution

Speaking more from a DBA perspective than a developer, this course is very comprehensive; there may be some things in there that are of value to you, particularly the Data Objects and Data Access chapters. It's written from an Oracle → SQL Server perspective but it works either way, it's about mapping concepts you already know to a slightly different vocabulary.

But, speaking from experience here, the biggest factor is not learning what datatypes correspond to what, but the shift in thinking about your application and particularly how to optimize it. For example, if you have come from SQL Server, you most likely believe that cursors are expensive and to avoid using them. Well, in Oracle every SELECT is a cursor "under the hood"; all using a cursor does is give you a handle to it. Similarly in SQL Server you will be used (unless you have been running in optimistic mode, which few people do) to readers blocking writers and writers blocking readers and coding to avoid that scenario; Oracle behaves very differently as it only supports MVCC anyway. Clustered indexes in SQL Server are use far more often than IOTs in Oracle (I don't actually know why this is, it's just something I've observed, Oracle people are missing a trick there).

Things like this are why apps ported from one to the other run into trouble... It's not just as simple as changing the SQL syntax (if it was you might as well have just used MySQL as you won't be getting the advantage of all these features you've paid for!)

Context

StackExchange Database Administrators Q#1847, answer score: 11

Revisions (0)

No revisions yet.