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

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


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.


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.


In the case of SQL server, it does not support these features itself.

Although as you may know there are many tools that will help you with that, like LINQ.