Fundamentos y Aplicaciones de Bases de Datos Objeto-Relacionales
Clasificado en Informática
Escrito el en español con un tamaño de 4,3 KB
Conceptos Fundamentales de Bases de Datos Objeto-Relacionales
Los conceptos principales de una base de datos objeto-relacional son:
- Encapsulación: Es la ocultación de los datos de un objeto. Solo se podrán modificar estos datos mediante las operaciones definidas en el objeto. Este aislamiento protege los datos asociados a un objeto de la modificación o eliminación sin la autorización de un usuario externo.
- Herencia: Es la relación entre un tipo de objeto general y otro más específico.
- Polimorfismo: Hace referencia a la sobrescritura de métodos al implementar un tipo de objeto utilizando herencia.
Identificación y Características de los Objetos
Para trabajar con bases de datos objeto-relacionales, es crucial identificar los objetos:
- Los objetos pueden ser físicos o conceptuales.
- Los objetos tienen atributos (características) como tamaño, nombre, forma, etc.
- Los objetos tienen operaciones (acciones que pueden realizar) como asignar un valor, mostrar por pantalla, incrementar un valor, etc.
Aplicaciones de los Sistemas de Gestión Objeto-Relacionales
Los sistemas de gestión de objetos relacionales son una excelente elección para:
- Sistemas que necesitan un buen rendimiento en la manipulación de tipos de datos complejos.
- Sistemas que requieren una integración transparente entre la base de datos y el programa escrito en el lenguaje de programación orientado a objetos (sin herramientas de mapeo).
Profundizando en la Herencia: Overloading y Overriding
Dentro del concepto de herencia, encontramos dos mecanismos importantes:
- Overloading: Consiste en que un tipo de objeto disponga de varios métodos con el mismo nombre. Esto es útil cuando se quiere proporcionar distintos caminos para hacer algo.
- Overriding: Consiste en sobrescribir un método heredado del supertipo para realizar una acción diferente en el subtipo.
Referencias con Ámbito (Scoped References)
Las referencias con ámbito optimizan el almacenamiento y acceso a los datos:
- En la declaración de un tipo de columna para ser REF, se puede restringir que el contenido provenga únicamente de una tabla específica. Esto es un SCOPED REF.
- Los tipos SCOPED REF requieren menos espacio de almacenamiento y permiten un acceso más eficiente que los tipos REF.
Métodos Miembro (Member Methods)
Los métodos miembro pueden ser de dos tipos, según su comportamiento:
- De tipo FUNCTION: Si devuelven un valor.
- De tipo PROCEDURE: Si no devuelven ningún valor.
Tipos de Datos Objeto Definidos por el Usuario
Los tipos de datos objeto son fundamentales para la flexibilidad de las bases de datos objeto-relacionales:
- Son los objetos definidos por el usuario. Puede ser un objeto (OBJECT TYPE) o una colección (COLLECTION TYPE).
- Se pueden usar como una columna más de una tabla relacional o como variables.
Estructura de un Tipo de Dato Objeto
Cada tipo de dato objeto se define por:
- Un Nombre que permite identificar el objeto.
- Atributos que definen su estructura. Pueden ser de tipo básico (NUMBER, VARCHAR, etc.) o definido por el usuario (simple o colección).
- Métodos, que pueden ser escritos en PL/SQL y se almacenan en la base de datos. Si se escriben en otros lenguajes, como C, se almacenan externamente.
- El Constructor está implícitamente definido en un tipo de datos objeto. Se puede redefinir.
Uso de Tipos de Datos Objeto Definidos
Una vez definidos, estos tipos se pueden utilizar para:
- Definir nuevos tipos.
- Crear tablas que almacenan objetos de ese tipo. Una tabla de objetos es una clase especial de tabla que almacena un objeto en cada fila y facilita el acceso a los atributos de esos objetos como si fueran columnas de la tabla. Veremos ejemplos de esto más adelante.
- Definir columnas de una tabla que almacenan objetos de ese tipo.