Difference Between Oracle Database and MS SQL Server


Main Difference

There are lot of different relational database management systems (RDBMS) among which Oracle Database and MS SQL Server are the most popular. There are many differences between these two RDBMS. The main difference between Oracle Database and MS SQL Server is that MS SQL Server uses Transact SQL/T-SQL structured query language that is an extension of SQL originally designed by Sybase and used by MS. While Oracle Database uses Procedural Language/SQL.

What is Oracle?

Oracle Database is an object relational database management system developed by Oracle Corporation and released on July 22, 2014. It is written in Assembly Language, C, and C++ and is available in many languages. The Oracle RDBMS stores data logically in the shape of tablespaces and physically in shape of data files like “datafiles”. Tablespaces can contain various types of memory segments such as: Data Segments, Index Segments, etc. Segments in turn comprise one or more extents that comprise groups of contiguous data blocks. Data blocks form the basic units of data storage. The Oracle database management tracks its computer data storage with the help of information stored “SYSTEM” tablespace. The “SYSTEM” tablespace contains the data dictionary and contains indexes and clusters by default. A data dictionary consists of a special collection of tables that contains information about all user-objects in the database.


What is MS SQL Server?

MS SQL Server is a RDBMS developed by Microsoft. It is written in C and C++ and is available in over twelve international languages. It is a software product with the main function of storing and retrieving data as requested by other software applications that may run either on the same computer or on another computer across the network including the internet. MS SQL Server uses as its primary query languages T-SQL and ANSI SQL. In latest version of 2014, MS has introduced many features that are: high availability and disaster recovery, enterprise scalability across computer, networking, and storage, security and compliance, consistent data platform on-premises to cloud, access of fata in familiar tools like excel, scalable data warehousing, easy-to-use management tools and many more.


Key Differences

  1. Transaction control system in both databases are different. MS SQL Server will execute each task individually by default and it will be harder to undo changes if any errors encountered along the way. While in Oracle changes are made only in memory and nothing is committed until an explicit “COMMIT” statement is given with some exceptions.
  2. MS SQL Server organizes all objects like tables, views, and procedures by database names. In Oracle Database, all database objects are grouped by schemas and users.
  3. Interface of Oracle Database is GUI and SQL and of MS SQL Server it is only SQL.
  4. MS SQL Server supports D language that is not supported by Oracle Database.
  5. Oracle Database is a proprietary software. MS SQL Server is an open source software.
  6. Oracle Database is available for Windows, Linux, Solaris, HP-UX, OS X, z/OS, and AIX. MS SQL Server is available for Windows, Linux, OS X, FreeBSD and Solaris.
Harlon Moss

Harlon currently works as a quality moderator and content writer for Difference Wiki. He graduated from the University of California in 2010 with a degree in Computer Science. Follow him on Twitter @HarlonMoss