Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Are products like SQL Server and Oracle examples of an "ORDBMS"?

According to wikipedia!

http://en.wikipedia.org/wiki/ORDBMS

IBM's DB2, Oracle database, and Microsoft SQL Server, make claims to support this technology and do so with varying degrees of success

So, are these products true "ORDBMS" like PostgreSQL? Or are they a long way from it? Can someone please point me to any link where I can read about the features still to be implemented by these RDBMS to become true ORDBMS!

like image 434
Neel Avatar asked Apr 22 '10 03:04

Neel


People also ask

Is SQL Server ORDBMS?

It is also capable of handling the complex data. MS SQL server, MySQL, SQLite, MariaDB are examples of RDBMS. PostgreSQL is an example of ORDBMS.

Is Oracle An ORDBMS?

Oracle is an object-relational database management system (ORDBMS), which means that users can define additional kinds of data--specifying both the structure of the data and the ways of operating on it--and use these types within the relational model.

Is Oracle An example of relational database?

Other databases, such as Oracle relational databases, apply locks at the record level, leaving the other records within the table available, helping ensure better application performance. Concurrency manages the activity when multiple users or applications invoke queries at the same time on the same database.

What type of database is Oracle?

Oracle Database is an RDBMS. An RDBMS that implements object-oriented features such as user-defined types, inheritance, and polymorphism is called an object-relational database management system (ORDBMS).


2 Answers

Oracle re-branded itself as an ORDBMS with the release of 8.0, which was the version when TYPEs arrived. However it wasn't a very complete object implementation. There was no inheritance in the first release and it took until 9iR2 - three major releases later - to get user-defined constructors. Even now, with 11g out, encapsulation is not entirely supported: TYPEs cannot have private variables or methods.

It transpired that very few existing Oracle customers cared much about objects and very few OO programmers were interested in databases. Plus there was a new Next Big Thing: the internet. So when version 8.1 was released Oracle reverted to being a plain RDBMS, albeit an internet-enabled one. Hence the 8i tag (i.e. it had Java Stored Procedures).

To those of us brought up on SQL the object implementation is a bit clunky and doesn't offer much with regards to storage. However, TYPEs have been a major addition to the PL/SQL armoury, particularly collections and bulk processing. Inheritance and polymorphism can be useful in some niche scenarios. I presented on this topic at the UKOUG annual conference a few years ago. Find out more.

Edit

Oracle still includes all its ORDBMS features in every edition of the database. They are pretty comprehensive (except for that lack of private variables and methods). I don't know how it compares to PostgreSQL. Oracle's OR features are covered in Oracle's online documentation, which you can read here.

like image 88
APC Avatar answered Sep 24 '22 23:09

APC


There is no absolute definition of an ORDBMS. How Oracle goes about storing objects is by hiding them in tables under the covers.

It is all smoke and mirrors going back ten years when Object Oriented Databases were being flogged as the next big thing.

I suspect that there won't be massive jumps in the level of 'object support' the major vendors put into their existing products. It looks like demand for Object Databases / Document Stores, it is probably in applications unsuited to an RDBMS. So the vendors are more likely to build or buy distinct products and focus on products that serve to integrate data irrespective of how it is stored.

like image 25
Gary Myers Avatar answered Sep 22 '22 23:09

Gary Myers