What is an Object-Oriented Database?

An error occurred trying to load this video.

Try refreshing the page, or contact customer support.

Coming up next: NoSQL Databases: Design & Types

You're on a roll. Keep up the good work!

Take Quiz Watch Next Lesson
Your next lesson will play in 10 seconds
  • 0:04 Object Oriented Databases
  • 1:18 Fundamental Features
  • 4:35 Advantages
  • 5:12 Challenges & Solutions
  • 6:14 Some Applications
  • 7:05 Lesson Summary
Save Save Save

Want to watch this again later?

Log in or sign up to add this lesson to a Custom Course.

Log in or Sign up

Lesson Transcript
Instructor: Vignesh Sivabalan
In this lesson, we will discuss what an object-oriented database is, the major principles behind this kind of database and a list of commercial applications that support object-oriented databases. We will also outline the advantages and challenges faced when using object-oriented databases.

Object-Oriented Databases

Put simply, object-oriented databases (OODB) are databases that represent data in the form of objects and classes. In object-oriented terminology, an object is a real-world entity, and a class is a collection of objects. Object-oriented databases follow the fundamental principles of object-oriented programming (OOP). The combination of relational model features (concurrency, transaction, and recovery) with object-oriented principles results in an object-oriented database model.

The object-oriented database model (OODBM) is an alternative implementation to that of a relational model. An object-oriented database is similar in principle to an object-oriented programming language. An object-oriented database management system is a hybrid application that uses a combination of object-oriented and relational database principles to process data. That said, we can use the following formula to outline the OODBM:

Object-Oriented Programming + Relational Database Features = Object-Oriented Database Model

The figure below outlines the object-oriented database model along with its principles and features.

Figure 1: The Object-Oriented Database Model

Fundamental Features

Let's now take a closer look at the fundamental features of object-oriented databases. To start, let's look at the feature of objects and classes.

The object-oriented approach considers all entities as objects. An object has properties (state) and methods (behavior). Each object is identified using a unique object identifier. For example, let us consider a real-world entity called 'Student'. A student has states or properties such as a name, USN, date of birth, address, etc. Similarly, the student has behaviors or methods including attending classes, writing exams, paying fees, etc.

This next figure below shows how the 'Student' object can be represented.

Figure 2: Representation of the Student Object
student object

As you can see, the state and behavior cells are separate, but related. A class is a collection of similar objects. In this example, a collection of first year commerce students forms a class. In a class, the objects interact with each other using messages.

Let's now look at the encapsulation feature.

Encapsulation is an important object-oriented feature. This hides the implementation details from the end-users and displays only the needed descriptions. For example, imagine that you are buying a soap from a commercial store. You know its ingredients such as color and fragrance by looking on the box, but you aren't shown the actual method used to manufacture the soap.

Let's now look at the inheritance feature.

Inheritance is considered important in object-oriented design because it enables re-usability. It is defined as the method of creating new classes from existing classes. The new classes not only inherit the properties of their parent class, but they also have their own unique properties. For example, when a child is born to parents, the child resembles either its mother or father, but it also has its own unique traits and personality. This figure below shows an additional example of how inheritance works.

Figure 3: Example of Inheritance

Now let's look at the association feature.

Association refers to links between the various entities of an application. In an object-oriented database, association is denoted as references between various objects. For example, individuals from a 'Person' class can also be associated with the 'Committee' class. The association name here can be called 'Membership' as outlined in this figure below.

Figure 4: Association Example

Now let's look at the feature of complex objects and compare them to simple objects.

The concept of complex objects is derived from applying constructors to simple objects. Simple objects are mainly items such as integers, byte strings, and characters. Complex objects are items such as maps, sets, lists, tuples, or collections of many primitive objects as shown in this figure here.

Figure 5: Complex Objects

Now, finally, let's look at the persistence feature.

The object-oriented database allows for the creation of persistent objects. A persistent object is one that lives in computer memory even after completing its execution. This is different from the lifespan of normal objects, which expire after execution, are destroyed immediately, and freed from memory. Object persistence solves the database challenges of concurrency and recovery.


There are many advantages to using object-oriented databases for creating applications and managing data. Some are as follows:

To unlock this lesson you must be a Member.
Create your account

Register to view this lesson

Are you a student or a teacher?

Unlock Your Education

See for yourself why 30 million people use

Become a member and start learning now.
Become a Member  Back
What teachers are saying about
Try it risk-free for 30 days

Earning College Credit

Did you know… We have over 200 college courses that prepare you to earn credit by exam that is accepted by over 1,500 colleges and universities. You can test out of the first two years of college and save thousands off your degree. Anyone can earn credit-by-exam regardless of age or education level.

To learn more, visit our Earning Credit Page

Transferring credit to the school of your choice

Not sure what college you want to attend yet? has thousands of articles about every imaginable degree, area of study and career path that can help you find the school that's right for you.

Create an account to start this course today
Try it risk-free for 30 days!
Create an account