Una BD orientada a objetos es una BD inteligente soporta el paradigma orientado a objetos almacenando método y datos, y no solamente datos. Esta diseñada para ser eficaz, desde el punto de vista físico, para almacenar objetos complejos. Evite el acceso a los datos; esto gracias a los métodos almacenados en ella. Es más segura, ya que no permite tener acceso a los datos (objetos); esto debido a que poder entrar se tiene que hacer por los métodos que haya utilizado el programador.
Un SGBDOO es un SGBD que almacena objetos y por tanto posee todas las ventajas de la orientación a objetos.
Las BDOO, se diseñan para trabajar bien en conjunción con los lenguajes de programación orientados a objetos como:
Java
C++
Visual Basic .Net
C#
Características de un GBDOO:
· Persistencia
· Concurrencia
· Recuperación
· Gran almacén secundario
· Consultas
· Abstracción
· Encapsulación
· Modularidad
· Jerarquía
· Tipos de generisidad
En total deben ser 13 características obligatorias para los SGBDOO, basado en dos criterios:
1. Sistema orientado a objetos
2. Sistema gestor de BD
Esto según Atkinson, y las características son:
1.- Debe de soportar objetos complejos.
2.- Debe de ser posible construir objetos complejos aplicando constructores a objetos básicos. Identidad del objeto. Todos los objetos deben tener un identificador el cual es independiente de los valores de sus atributos
3.- Encapsulamiento. Los programadores solo tiene acceso a la especificación de interfaz de los métodos, y los datos e implementación de estos métodos están ocultos en los objetos.
4.- Tipos o clases. En el esquema de una BDOO contiene un conjunto de clases o tipos.
5.- Tipos o clases deben ser capaces de heredar de sus supertipos los atributos y los métodos.
6.- La sobrecarga debe de ser soportada los métodos deben de poder aplicarse a diferentes tipos.
7.- El DML () debe de ser completo. El DML en los SGBDOO debe de ser un lenguaje de programación de propósito general.
8.- El conjunto de tipo de datos debe de ser extensible. No abra distinción ente los tipos definidos por el usuario y los tipos definidos por el sistema.
9.- Persistencia de datos. Los datos deben mantenerse después de que la aplicación los que los creo haya finalizado, el usuario no tiene que hacer copia explícitamente.
10.- El SGBD debe de ser capaz de manejar BD grandes.
11.- El SGBD debe de soportar la concurrencia. Debe de disponer del mecanismo para el control de la concurrencia.
12.- Recuperación. El SG debe de proveer mecanismos de recuperación de la información en caso de falla del sistema.
13.- El SGBD debe de proveer una manera fácil de hacer consultas.