Chapter 26. Object-Oriented Aspects of PL/SQL

PL/SQL has always been a language that supports traditional procedural programming styles such as structured design and functional decomposition. Using PL/SQL packages, it is also possible to take an object-based approach, applying principles such as abstraction and encapsulation to the business of manipulating relational tables. Recent versions of the Oracle database have introduced direct support for object-oriented programming (OOP), providing a rich and complex type system, complete with support for type hierarchies and “substitutability.”

In the interest of summarizing this book-sized topic into a modest number of pages, this chapter presents a few choice code samples to demonstrate the most significant aspects of object programming with PL/SQL. These cover the following areas:

  • Creating and using object types

  • Using inheritance and substitutability

  • Type evolution

  • Pointer (REF)-based retrieval

  • Object views, including INSTEAD OF views

Among the things you will not find in this chapter are:

  • Comprehensive syntax diagrams for SQL statements dealing with object types

  • Database administration topics such as importing and exporting object data

  • Low-level considerations such as physical data storage on disk

I’d like to introduce the topic with a brief history.

Get Oracle PL/SQL Programming, 5th Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.