This module discussed the object-relational approach using Oracle.
You have learned about object details that help you build the program logic.
Now that you have completed this module, you should be able to:
- Understand the reasons to use Oracle objects versus relational tables
- Understand the different terms for Oracle objects
- Describe the SQL techniques that allow you to query object tables
- Determine when to use collections and variable size arrays
- Determine when to use nested tables in querying
- Write SQL to query object tables
What is Oracle's approach to object-relational databases?
Oracle Corporation, a prominent figure in the world of relational database management systems, has developed an approach to Object-Relational Databases (ORDBMS) that melds the capabilities of both relational databases and object-oriented programming.
Oracle's Object-Relational Database Management System extends the functionality of its robust Relational Database Management System (RDBMS) with object-oriented features that facilitate complex data representation and operations. It allows developers to handle complex data types, such as multimedia applications or geographic information systems, more efficiently.
Key features of Oracle's ORDBMS approach include:
- Abstract Data Types (ADTs): Oracle enables users to define their own data types, or ADTs, which can be used to create column values in a table. ADTs can contain many elements, and these elements can be primitive data types or other ADTs. This allows for complex hierarchical structures and relationships between data.
- Object Identifiers: Oracle's ORDBMS assigns a unique system-generated identifier to each object, which is similar to the primary key in a relational table. This Object Identifier (OID) can be referenced in other tables, facilitating object relationships and data integrity.
- Object Views: Oracle allows existing relational data to be accessed as objects using Object Views. This feature enables users to present a relational schema as an object schema, providing a way to move to an ORDBMS without changing existing application code.
- Inheritance: Oracle's ORDBMS supports type inheritance, a key feature of object-oriented programming. This allows a subtype to inherit characteristics from a supertype, providing for code reusability and data model hierarchy.
- Methods: In Oracle, ADTs can include defined operations, or methods. These methods can be used to manipulate the data encapsulated in the object and to enforce business rules related to that data.
- Collections (Varrays and Nested Tables): Oracle's ORDBMS supports collections which are ordered groupings of data. Varrays are variable-sized arrays, and nested tables allow users to create tables that are nested within other tables, both features facilitate complex data structures.
By combining object-oriented and relational concepts, Oracle's approach to ORDBMS enables a more sophisticated data modeling structure, enhancing data encapsulation, inheritance, and polymorphism. This approach leverages the benefits of relational databases, such as robustness, scalability, and data integrity, while at the same time allowing for the complexity and flexibility offered by object-oriented models.
Click the Quiz link below to take a multiple-choice quiz about the material we have covered in this module.
Querying Object Tables - Quiz
In the next module, we will go into more detail on querying related object tables.