I previously posted a Poll about What is Your Favorite Database?
I got great response from users. In fact, I received some of the best poll-related comments on this blogĀ and they are worth reading.
Let us check the result first. Here are the votes I received on different database. Total votes received are 1,697.
SQL Server – 1,121 – 64%
Oracle – 432 – 25%
MySQL – 144 – 8%
Other – 64 – 4%
SQL Server is a clear winner withĀ 1,121 votes, which is an astounding 64% of the total votes. As a matter of fact, it is not startling to see SQL ServerĀ emerge as a winner as this blog is primarily focused on SQL Server, andĀ on top of that SQL Server is the most popular language.
Lotus Notes/Lotus Domino (total 12 votes) and PostegreSQL (total 12 votes) are the top two DBMS in other section.
Let us have a look at the result in the following image. Here,Ā I have included all the DBMS who received more than 1 vote.
Now I would like to announce the winner who gave the best comment.Ā And the winnerĀ is Brian Tkatch. I could not stop laughing after reading his comment. He is dear friend of mine and a SQL Expert who hasĀ actively participated several times on this blog earlier.Ā Imran Mohammed and phat shantz also came up with interesting comments. I thoroughly enjoyed reading their comments as they discussed unknown details about other database. The comment from Jeff further led to some good discussion on the topic. I have not edited any of their comments and have published their original version.
Comment of Brian Tkatch :
I prefer the DB that is best suited for the job. If there job can use any, i prefer Oracle because it makes the most sense to me.
Iāve use a few RDBMs, but for short periods, like a year or two. I have very particular tastes, and as such am heavily biased, so IMNSHO:
SQL Server implements what programmers want, and then bends to the way things should be where it doesnāt add too much inconvenience.
Pros: Integrated, easy to manage, secure, supported, low cost, convenient in most cases, Pinal Dave
Cons: inconvenient in some cases (SET NOCOUNT ON et al, non-ANSI join-syntax is deprecated, and others) bar set too low for DBAs (allowing much idiocy), no robust command line tool
Oracle implements things the way they should be done, and then bends to the programmer where it is helpful but does not break any ideas.
Pros: Robust, secure, supported, fast, long history
Cons: Very expensive, inconvenient in some cases
MySQL isnāt a database. Itās free and fast for lightweight applications, but lacks security and robustness of a real database. Iād use it where speed and cost are factors, but not security or data retention.
Pros: Fast, free
Cons: Not secure, error messages rarely help, not robust, no reliable data retention, slow on complex queries with large data sets.
Others include:
DB2 implements whatever it can, trying to make everybody happy, supporting the popular features of both SQL Server and Oracle. I would use it where being an IBM shop made sense. Otherwise, SQL Server or Oracle could easily do the same job.
Pros: Supports everything. Cheap. Supported by IBM.
Cons: Easy to crash (i crashed it, that is the server, 4 different times by running regular queries), lack of distinctness
PostgreSQL is similar to Oracle, but free. Iād use it anywhere other people would use MySQL but want a database instead, or where commercial support is a must.
Pros: Fast, free, secure
Cons: Relatively small community supporting it
Access is a RAD for small applications.
Pros: Cheap, integrated, RAD
Cons: Single user, not for large applications.
One word:
SQL Server – Easy
Oracle – Robust
MySQL – Fake
DB2 – Contender
PostgreSQL – Free
Access – Small
Thank you for reading. I think i got it out of my system now. :)
Comment of Imran Mohammed :
BEST RDBMS in Market :
SQL Server
Few reasons:
1. Costs Less.
2. Extra Security.
3. Extra features
4. Comes with many free tools.
5. Have capabilities to handle VLDB (UPSS – 18 TB, Myspace uses SQL Server)
6. Comparatively easy to handle/Interfaces.
List goes on and onā¦.
More Important⦠I am getting monthly pay cheques because I am SQL Server DBA. :)
Comment of phat shantz :
For years I built standalone business applications using c-Tree, a high-performance, cross-platform database from Faircom that could be implemented with native or server based access.
I still think c-Tree is the best database in the universe, although the downside is the limited acceptance and limited developer resources.
For the past few years, all my clients have used SQL Server.
Like all things Microsoft, SQL Server is a āgood-enoughā solution, so using and implementing it is tolerable. Since it plays well with MS office and MS builds all its business-centric products around it, it becomes the de-facto standard.
Compromise is not always the best course, but when dealing with jumpy executives and poorly-trained IT, sometimes the best you can do is compromise.
Even for some of the grandest projects, Oracle has usually been overkill. Itās expensive, a hog, slow (in my experience ā and donāt blame me, it was always administered by a āprofessionalā Oracle admin), but will handle 500,000 transactions in a gulp. I have seen one implementation of an Oracle database that actually needed that kind of horsepower.
Sybase and MySQL need no comments. Their fanbois are poised out there, ready to tout their superiority and flame anyone who disagrees.
Like one of your commenters stated, the question should be āwhatās your favorite database for X type of project?ā
If the environment is Microsoft and the platform is business and the clients and staff are untrained and largely uninformed, the answer is always SQL Server.
Still, I would never undertake a project using SQL Server without one of the best ORM/EF products available. Microsoftās LINQ and EF are both less palatable as database access layers than are the visual components that come in Visual Studio tolerable as win or web-form components. (While most of what MS delivers is āgood enough,ā I think MS delivered LINQ and EF so they could claim they provide something. As they dissatisfied girlfriend says of the gift from an unwanted suitor, āyou shouldnāt have.ā
Just as I would never deliver a product using the worldās ugliest visual components (the VS toolbox), I would never use SQL Server without a quality (and pricey) ORM.
Even with all itās drawbacks, sometimes the answer is SQL Server even if the staff and clients are very skilled and knowledgeable. I can think of some cases where it is the best answer, but the meta-requirements have to go far beyond capacity, speed, platform, or tools.
I guess there will always be a few āBetaMaxā databases out there that are far superior in performance and capability to SQL Server. But the Redmond Marketing Horde has long conquered the battleground and there is little hope of the best rising above the most popular.
Comment of Jeff :
Iām not sure thats a fair question to ask. There are TONS of databases out there both free and commerical. The real question is always whats youāre favorite database for X.
For a āEnterpriseā DB, I like Sql server. It has a low barrier to entry, good tools, reasonable price point etc etc. I like PL/SQL as a stored proc language better than t-sql, but I find the learning curve for new developers to be higher on Oracle.
MySQLās licensing terms, specifically the GPLāed ADO.Net provider, personally make it a āmehā option in the open source / free category. If I had to pick an enterprise database for linux shops Iād go with Postgres or Firebird first. MySQLās ability to have differing disk formats is a really great feature. However the disk formats that it ships with are in my book un-compelling. Postgres and Firebird both have much better concurrency models. They both have much better procedural languages. They dont āblackmailā me into buying support by GPLing a component that every other vendor on the planet licenses under the LGPL and then offering a binary-only support contract.
One database I find myself using a lot is SQLite. Itās a very very simple database. Itās serverless, locking is coordinated through the database file. The resource requirements are low enough for use in embeded systems. The great part about it is the zero-config aspect of it All you need to do is link in the library and point it at the db file. This is great for stuff youād never think of using a database for otherwise. If Iām writing an application that needs data files, I can make them a database. I can use it as a light-weight db for unit testing. For webapps that expect an unzip and go deployment itās a wonderful option. I can have a real db that simply lives on a file in the app.
I am really thankful to all of my blog readers and every person who participated in Poll. As requested by many readers, I will have new poll very soon.
Reference : Pinal Dave (https://blog.sqlauthority.com)
3 Comments. Leave new
Thanx Pinal, that is a nice comment form you.
I’m most surprised of the lack of DB2 in the listing. Especially with DB2 for LUW, they are the choice of many shops that deal with IBM.
Pinal, this is valuable information for the community. Thanks for creating the poll and posting the results. I always enjoy reading your blog.
I’d like to add to this by sharing some polls that I’ve posted on my blog. I’m a SQL Server BI practitioner so my questions are focused mainly on the Microsoft SQL Server BI toolset: