SQL Server VS Oracle [closed] SQL Server VS Oracle [closed] oracle oracle

SQL Server VS Oracle [closed]


Just my $0.02 after working with SqlServer for years and Oracle for 4 months now.

SqlServer is much easier to use, this allows you to concentrate on what you want the database to do (solve some business problems) instead of wrestling the server all the time.

Because Oracle makes you configure so many settings, there are a lot of ways to get them wrong. This leads to endless discussions about partitioning, the type of index to use, etc etc. During those discussions, nobody is thinking about the business problems.

An analogy: I once had a olympus camera with a good lens and some simple settings. I made nice pictures with it so I upgraded to a DSLR with all kinds of knobs and dials. With that my pictures weren't half as good because I was concentrating on the camera instead of the subject.

That to me is the difference between Sql and Oracle. Sql is easier to work with and therefore gets more things done. Ideas go from the whiteboard to working code so much faster. Only when you push for very large databases that Oracle might take the edge but I'm not even sure of that. I don't think there's something that Oracle could handle that SQL couldn't.

Edit:Also, Oracle is very poor at in-database analytics on large data volumes because of context switching to PL/SQL. So if you have a few complex functions you want to run on your data, don't use Oracle. MS SQL on the other hand shines in this area because it does not suffer from this issue and also has .Net integration.


I'd say:

  • Oracle has a much better procedural language. T-SQL feels only half finished compared to PL/SQL.
  • SQL Server has a much better optimizer. When I used Oracle, I had to hint every query to make sure that it didn't take forever to finish, SQL Server just works. Might have been that the server was badly configured, though, which takes us to the next point
  • SQL server is a lot easier to work with. You need dedicated DBAs to administer Oracle, but pretty much any bozo can keep SQL server running.
  • Oracle has a better, more predictable and more well-documented concurrency model.
  • Oracle's documentation is superior in most ways.
  • SQL server integrates better with .NET (like the devil Linq2SQL).
  • If you use Oracle you also have to buy TOAD, but the included Manegement Studio will do for SQL Server.
  • Oracle has more cool but hardly necessary features like extensible indexing.

If I were to choose I'd go for SQL server because of the better optimizer. However, I don't really feel safe when multiple people use the same rows in SQL server.


I don't know if this is fair, but it's my experience having worked with both:

  1. Oracle seems to be somewhat more "powerful" with some nifty features that SQL Server hasn't quite caught up with yet.

  2. SQL Server is MUCH easier to work with, and has much better integration with microsoft products (if you're doing .NET development that is).