Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
RELACIN: EXTIENDE
una clase expande su sperclase en lugar de
estrecharla en un tipo ms especfico.
INTEGRIDAD DE LAS RELACIONES
ODL
nom _Pers ona : s
truct dni : String titulacion : String Edic ionActual
fecha_Nac : Date <<exten d>> 0..*
genero : enum nota_m edia() : FLOAT
direccion : s truct m atricular_es tudiante()
m atriculars e(num _edic : Integer)
cal ificar(num _edic : Integer, nota : FLOAT)
edad() : FLOAT
1
<<extend>> ediciones_cursadas
Profes or
1..*
c ategoria : S
tring sal ario : <<extend>>
Califi cacion
FLOAT
nota : FLOAT
des pac ho : Stri
ng telefono : S 1
tring
aum entar_s alario(aumento : FLOAT) 0..*
prom ocionar( nueva_c ategoria : Stri
ng) tutoriz a
0..*
1
0..*
Edicion
num _edic :
Departam Integer ao :
nomento
bre : String Integer
telefono : en_com ite
sem es tre : enum
String
des pacho : 0..* 1..*
0..*
String es cuela :
Es tudianteGrad Titulo
String
titulos : s et<Titulos es cuela :
director : Profes
or 1 > String titulo :
as ignar_tutor(apellido1 : String, apellido2 : String) String
oferta ao : String
as ignar_m iem bro(apellido1 : String, apellido2 :
0..* String)
Curs o
nom bre : String
num _curs o :
String des cripcion 1
: String
LENGUAJES DE
DEFINICIN
DE OBJETOS:
ODL
LENGUAJES DE
DEFINICIN
DE OBJETOS:
ODL
LENGUAJES DE DEFINICIN
DE OBJETOS:
ODL
LENGUAJES DE
DEFINICIN
DE OBJETOS:
ODL
LENGUAJES DE
DEFINICIN
DE OBJETOS:
ODL
LENGUAJES DE
DEFINICIN
DE OBJETOS:
ODL
LENGUAJES DE
DEFINICIN
DE OBJETOS:
ODL
LENGUAJE DE CONSULTA
DE OBJETOS:
OQL
Lenguaje declarativo similar a
SQL
Basado en SQL-92
Superconjunto de SELECT
No modifica estado de los
objetos
Se hace mediante los mtodos
SELECT FROM WHERE
LENGUAJE DE CONSULTA
DE OBJETOS:
OQL
OQL
El resultado de una consulta puede
ser de cualquier tipo soportado por
ODMG
Una consulta OQL puede devolver un
resultado con una estructura
compleja especificada en la misma
consulta utilizando struct
BASES DE DATOS OBJETO-RELACIONALES
LAS BASES DE DATOS OBJETO-RELACIONAL
EXTIENDEN EL MODELO DE DATOS
RELACIONAL PARA HACER FRENTE A LAS
DEBILIDADES EN ESTANDARIZACIN Y
SOPORTE PARA VISTAS Y SEGURIDAD
AADE CARACTERSTICAS ASOCIADAS CON
SISTEMAS ORIENTADOS A OBJETOS AL
MODELO DE DATOS RELACIONAL
DIFERENCIAS CON MBDOO
EL MODELO DE BASES DE DATOS ORIENTADAS
A OBJETOS AADE FUNCIONALIDADES A LOS
LENGUAJES DE PROGRAMACIN ORIENTADOS
A OBJETOS (ABANDONAN SQL)
EL MODELO DE BASES DE DATOS OBJETO-
RELACIONAL INTENTA AADIR TIPOS DE
DATOS Y CARACTERSTICAS DE MANEJO DE
OBJETOS AL MODELO DE DATOS RELACIONAL
(EXTIENDEN SQL)
VENTAJAS
PERMITE ALMACENAR MLTIPLES VALORES EN
UNA COLUMNA DE UNA MISMA FILA, SIN
ABANDONAR EL MODELO RELACIONAL QUE
SUELE CONTENER VALORES ATMICOS)
PERMITE ALMACENAR PROCEDIMIENTOS EN LAS
RELACIONES
ES SOPORTADA POR LA MAYORA DE MBD EN EL
MERCADO
HERENCIA DE TIPOS
ORACLE
EJEMPLOS
SQL
CREATE TYPE PERSONA AS OBJECT CREATE TYPE person_type AS (
( PRIVATE date_of_birth DATE
NOMBRE VARCHAR2(30), PUBLIC name VARCHAR(15) NOT
TELEFONO VARCHAR2(20)
NULL,
);
address VARCHAR(50)
CREATE TYPE LINEAPED AS OBJECT
NOT NULL,
(
tel_no VARCHAR(13) NOT NULL,
NOM ARTICULO VARCHAR2(30),
FUNCTION get_year_of_birth (P
CANTIDAD NUMBER,
PRECIO UNIDAD NUMBER(12,2)
person_type)
);
RETURNS INTEGER
CREATE TYPE LINEAPED TABLA AS TABLE OF LINEAPED;
YEAR(date_of_birth)
CREATE TYPE PEDIDO AS OBJECT RETURN END)
( NOT FINAL;
ID NUMBER,
CONTACTO PERSONA,
LINEASPED LINEAPED TABLA,
MEMBER FUNCTION OBTENER VALOR RETURN NUMBER
);
EJEMPLO
CREATE TYPE UBICACION AS OBJECT(
NUM EDIFICIO NUMBER,
CIUDAD VARCHAR2(30)
);
CREATE TYPE PERSONA AS OBJECT(
ID NUMBER,
NOMBRE VARCHAR2(30),
DIRECCION VARCHAR2(30),
OFICINA UBICACION
);
CREATE TABLE EMPLEADOS OF PERSONA(
ID PRIMARY KEY
);