SlideShare una empresa de Scribd logo
IES SAN VICENTE - 2º ASI – SGBD
INTRODUCCIÓN
 Las BD tradicionales presentan deficiencias.
 La orientación a objetos ofrece: flexibilidad, no está limitada. La
característica clave es la potencia.
 Las BDOO se pueden integrar en aplicaciones con lenguajes
orientados a objetos y para simplificar la POO.
 Una SGBDOO es una SGBD que almacena objetos incorporando
así todas las ventajas de la OO.
 ODMG (Object Database Mangement Group) es el grupo de
fabricantes de SGBDOO que propuso el estándar
 El uso del estándar proporciona: portabilidad, interoperabilidad y
además permite que los usuarios puedan comparar entre distintos
sistemas comerciales.
VENTAJAS
 Mayor capacidad de modelado
 Ampliabilidad
 Lenguaje de consulta más expresivo.
 Adecuación a las aplicaciones avanzadas
de base de datos.
 Mayores prestaciones.
DESVENTAJAS
 Carencia de un modelo de datos universal.
 Carencia de experiencia.
 Carencia de estándares.
 Competencia. Con respecto a los SGBDR y los
SGBDOR.
 La optimización de consultas compromete la
encapsulación.
 El modelo de objetos aún no tiene una teoría matemática
coherente que le sirva de base.
MANIFIESTOS DE LAS
SGBDOO
 Manifiesto de los Sistemas de Bases de
Datos al Objeto puras, ATKINSON, 1989:
 Manifiesto de los SBD de Tercera
Generación, STONEBRAKER, 1990:
 Tercer manifiesto, DARWEN y DATE 1995:
MODELO ESTÁNDAR ODMG
(I)
 MODELO DE OBJETOS
Primitivas de modelado:
 Componentes básicos son objetos y literales.
 Se categorizan en tipos.
 Lo que un objeto sabe hacer son sus operaciones.
 Las propiedades son sus atributos y las relaciones.
 Una base de datos es un conjunto de objetos almacenados que pueden
ser accedidos por múltiples usuarios y aplicaciones.
 La definición de una base de datos está contenida en un esquema que
se ha creado mediante el lenguaje de definición de objetos ODL.
MODELO ESTÁNDAR ODMG
(2)
 MODELO DE OBJETOS (2)
 OBJETOS
○ Colección (para las clases contenedor) son:
○ Set<tipo>: Grupo desordenado de objetos del mismo tipo. No se permiten
duplicados.
○ Bag<tipo>: Grupo desordenado de objetos del mismo tipo. Se permiten
duplicados.
○ List<tipo>: Grupo ordenado de objetos del mismo tipo. Se permite
duplicados.
○ Array<tipo>: Grupo ordenado de objetos del mismo tipo que se puede
acceder por su posición. El tamaño es dinámico.
○ Dictionary<clave,valor>: índice. Formado por las clavez ordenadas,
emparejada con un solo valor.
○ estructurado:
○ Date: fecha del calendario
○ Time: hora.
○ Timestamp: hora de una fecha.
○ Interval: período de tiempo.
MODELO ESTÁNDAR ODMG
(3)
 MODELO DE OBJETOS (3)
 LITERALES
○ Los atómicos son:
 Boolean: verdadero o falso.
 Short: entero con signo de 8 o 16 bits.
 Long: entero con signo de 32 o 64 bits.
 Unsigned short: entero sin signo de 8 o 16 bits.
 Unsigned long: entero sin signo de 32 o 64 bits.
 Float: valor real en coma flotante de simple precisión.
 Double: valor real en coma flotante de doble precisión
 Octet: almacén de 8 bits.
 Char: carácter ASCII o UNICODE.
 String: cadena de caracteres.
 Enum: tipo enumerado donde los valores se especifican explícitamente cuando
se declara el tipo.
○ Estructurales: date, time, timestamp, interval y struct.
○ Los de colección son: set<tipo>, bag<tipo>, listo<tipo>,
array<tipo> y dictionaru<clave,valor>.
MODELO ESTÁNDAR ODMG
(4)
 MODELO DE OBJETOS (4)
 TIPOS
○ Interface (equivalente a una clase abstracta).
○ Clase (equivalente a una clase concreta).
○ Soporta la herencia simple y la herencia múltiple mediante las
interfaces.
○ Se puede hacer referencia a los subtipo como su supertipo.
Los subtipo se pueden especializar como sea necesario.
○ La relación extiende (extends) para indicar la herencia de
estado y de comportamiento..
○ Extensión (extent) tiene un nombre e incluye todas las
instancias de objetos persistentes.
○ Puede tener una o más claves (key).
○ La representación es una estructura de datos.
○ Los detalles de las operaciones de un tipo se especifican
mediante un conjunto de métodos.
MODELO ESTÁNDAR ODMG
(5)
 MODELO DE OBJETOS (5)
 Propiedades
○ Atributos
○ Relaciones. Sólo soporta relaciones binarias
(1:1, 1:n, n:m).
 Transacciones
○ Son unidades lógicas de trabajo que llevan a
la base de datos de un estado consistente a
otro estado consistente
MODELO ESTÁNDAR ODMG
(6)
 ODL (Object Definition Language)
 Lenguaje de especificación
 Es el equivalente de DDL (Data Definition
Languaje o lenguaje de definición de datos)
de los DBMS tradicionales
 Las declaraciones de atributos son
sintácticamente idénticas las declaraciones
de miembros de C++.
 Ver ejemplo.
MODELO ESTÁNDAR ODMG
(9)
 OQL:
 Permite realizar consultas de modo eficiente sobre
bases de datos orientadas a objetos. Basado en
SQL-92.
 La sintaxis: SELECT… FROM… WHERE… :
○ SELECT d.nombre
○ FROM d in departamentos
○ WHERE d.escuela=”Ingeniería”;
 Es necesario utilizar una variable iteradora. Estas se
puede especificar de estas formas:
○ D in departamentos
○ Departamentos d
○ Departamentos as d
MODELO ESTÁNDAR ODMG
(10)
 OQL (2)
 El nombre de cualquier objeto persistente es
una consulta:
○ departamentos;
 Si se da nombre a un objeto concreto. Por
ejemplo: departamentoinf; al departamento de
informatica, se devuelve una referencia a ese
objeto individual:
○ departamentoinf.director;
○ departamentoinf.director.categoria:
○ departamentoinf.tiene_profesores;
MODELO ESTÁNDAR ODMG
(11)
 OQL (3)
 Ejemplo que muestra los nombres y apellidos de los
estudiantes y lo títulos que tiene cada uno:
○ Select struct(nombre: struct(ape1: e.nombre.apellido1,
○ ape2: e.nombre.apellido2,
○ nom: e.nombre.nombre_pila),
○ titulos: (Select struct(tit: t.titulo,
○ año: t.año,
○ esc: t.escuela)
○ From t in e.titulos)
○ From e in departamentoinf.director.tutoriza;
 OQL es ortogonal respecto a la especificación de
expresiones de caminos.
MODELO ESTÁNDAR ODMG
(12)
 OQL (4)
 Otras características:
○ Especificación de vistas dando nombres a
consultas.
○ Obtención como resultado de un solo
elemento.
○ Uso de operadores de colecciones: funciones
agregados y cuantificadores.
○ Uso de group by.
ORACLE
 Para crear tipo de objetos utilizamos CREATE TYPE.
Ejemplo:
CREATE TYPE persona AS OBJECT(
Nombre VARCHAR2(30),
Telefono VARCHAR2(20)
);
 Un tabla relacional tiene una columna cuyo tipo es un
objeto: objetos columna. Ejemplo:
CREATE TABLE contactos(
Contacto persona,
Fecha DATE
);
ORACLE (2)
 Se puede incluir una clausula default:
CREATE TABLE departamento(
Num_dept VARCHAR2(5) PRIMARY KEY,
Nombre_dept VARCHAR2(20),
Director persona DEFAULT persona(1,’Pepe Pérez’,NULL),
Empleados gente DEFAULT gente(
persona(2,’Ana López’,’C/ del pez, 5’)
persona(3,’Eva García’,NULL) )
)
NESTED TABLE empleados STORE AS empleados_tab
 Las columnas que son tablas anidadas y los atributos que son
tablas de objetos requieren una tabla a parte donde almacenar
las filas de dichas tablas. Se especifica con NESTED TABLE…
STORE AS…
ORACLE (3)
 Definir una clave primaria sobre una tabla de objetos:
CREATE TYPE persona AS OBJECT(
Id NUMBER,
Nombre VARCHAR2(30),
Direccion VARCHAR2(30),
Oficina ubicación
);
CREATE TABLE empleados OF persona(
Id PRIMARY KEY
);
 También se pueden definir disparadores:
CREATE TRIGGER disparador
AFTER UPDATE OF despacho ON empleados
FOR EACH ROW
WHEN new.despacho.ciudad=’Castellon’
BEGIN
IF (:new.despacho.num_edificio=600) THEN
INSERT INTO traslado (id, despacho_antiguo, despacho_nuevo)
VALUES (:old.id, :old.despacho, :new.despacho);
END IF;
END;
ORACLE (4)
 METODOS: Son funciones o procedimientos que se
pueden declarar en la definición de un tipo de objeto para
implementar el comportamiento que se desea para dicho
tipo de objeto.
CREATE TYPE BODY racional AS
MEMBER PROCEDURE normaliza IS
g INTEGER;
BEGIN
g := gcd(SELF.num, SELF.den);
g := gcd(num, den); -- equivale a la linea
anterior
num :=num/g;
den :=den/g;
END normaliza;
….
END;
ORACLE (5)
 Dos tipos: Varray , Tabla anidada
CREATE TYPE precios AS VARRAY(10) OF NUMBRE (12,2);
CREATE TYPE lineaped_tabla AS TABLE OF lineaped;
 Se pueden consultar con resultados anidados y sin anidar:
SELECT e.nombre, e.proyectos
FROM empledos e
NOMBRE PROYECTOS
-------------- --------------------
‘Pedro’ tab_proyecto(67,82)
‘Juan’ tab_proyecto(22,67,97)
SELECT e.nombre, p.*
FROM empleados e, TABLE(e.proyectos) p;
NOMBRE PROYECTOS
-------------- --------------------
‘Pedro’ 67
‘Pedro’ 82
‘Juan’ 22
‘Juan’ 67
‘Juan’ 97
ORACLE (6)
 Herencia de tipos
 Para crear un subtipo se utiliza la cláusula
UNDER:
CREATE TYPE estudiante UNDER
persona(…,
Titulacion VARCHAR(30),
Fecha-ingreso DATE
) NOT FINAL;
ORACLE (7)
 Funciones y predicados útiles con objetos
 VALUE: devuelve instancias de objetos correspondientes a las filas de la tabla.
SELECT VALUE(p)
FROM personas_tab p
WHERE p.direccion LIKE ‘C/Mayor%’;
 REF: toma como parámetro un alias de tabla y devuelve una referencia a una
instancia de un objeto de dicha tabla.
 IS OF comprobar el nivel de especialización
SELECT VALUE(p)
FROM personas_tab p
WHERE VALUE(p) IS OF (estudiante);
 TREAT: trata a una instancia de un supertipo como una instancia de uno de sus
subtipos.
SELECT TREAT(VALUE(p) AS estudiante)
FROM personas_tab p
WHERE VALUE(p) IS OF (ONLY estudiante);
BIBLIOGRAFÍA
 www.odbms.org
 http://es.wikipedia.org/wiki/Base_de_datos
 http://es.wikipedia.org/wiki/Base_de_datos_orientada_a_objetos
 http://www.itescam.edu.mx/principal/sylabus/fpdb/recursos/r23897.PDF
 http://tejo.usal.es/~fgarcia/docencia/poo/02-03/trabajos/S1T3.pdf
 http://www3.uji.es/~mmarques/e16/teoria/cap2.pdf
 http://www.cs.cinvestav.mx/BDChapa/Beto/Blanco.htm
 http://tejo.usal.es/~fgarcia/docencia/poo/03-04/Trabajos/SGBDOO.pdf
 http://basesdatos.uc3m.es/fileadmin/Docencia/BDA-II/teoria/BDOO.pdf
 www.bdoo.wordpress.com

Más contenido relacionado

La actualidad más candente

Estructura de una base de datos
Estructura de una base de datosEstructura de una base de datos
Estructura de una base de datos
Zcnp1234
 
Definiciones base de datos
Definiciones base de datosDefiniciones base de datos
Definiciones base de datos
Camilo Tellez
 
base de datos power point
base de datos power pointbase de datos power point
base de datos power point
scaitechnonolgy
 
Base De Datos I Completo
Base De Datos I CompletoBase De Datos I Completo
Base De Datos I Completo
guest7eaf64
 
Clase de informatica base de datos
Clase de informatica   base de datosClase de informatica   base de datos
Clase de informatica base de datos
4M4LI4
 
Diapositivas de base de datos
Diapositivas de base de datosDiapositivas de base de datos
Diapositivas de base de datos
estibenzon
 
Introduccion bases de datos
Introduccion bases de datosIntroduccion bases de datos
Introduccion bases de datos
UTN
 
Base de datos slideshare
Base de datos slideshareBase de datos slideshare
Base de datos slideshare
unefacams
 
Bases de datos orientado a objetos
Bases de datos orientado a objetosBases de datos orientado a objetos
Bases de datos orientado a objetos
jorge220395
 
Bases De Datos "Conceptos Basicos"
Bases De Datos "Conceptos Basicos"Bases De Datos "Conceptos Basicos"
Bases De Datos "Conceptos Basicos"
Cesar David Fernandez Grueso
 
diapositivas de informática BASE DE DATOS
diapositivas de informática BASE DE DATOSdiapositivas de informática BASE DE DATOS
diapositivas de informática BASE DE DATOS
Dayanaperezflorez
 
Conceptos Fundamentales de Base de Datos
Conceptos Fundamentales de Base de DatosConceptos Fundamentales de Base de Datos
Conceptos Fundamentales de Base de Datos
Carlos Rafael Luna Vargas
 
Base de datos pres..
Base de datos pres..Base de datos pres..
Base de datos pres..
chovialbi
 
Base de datos ppt
Base de datos pptBase de datos ppt
Base de datos ppt
Ricardo Daniel Polo Conopuma
 
Conclusiones sobre bases de datos
Conclusiones sobre bases de datosConclusiones sobre bases de datos
Conclusiones sobre bases de datos
DaniiGonzalez98
 
Base de datos multidimensional
Base de datos multidimensionalBase de datos multidimensional
Base de datos multidimensional
Cristhian Andres Arias
 
Exposicion base datos
Exposicion  base datosExposicion  base datos
Exposicion base datos
UNEFA
 
Conceptos basicos
Conceptos basicosConceptos basicos
Conceptos basicos
María Luisa Velasco
 
Bases de datos orientadas a objetos
Bases de datos orientadas a objetosBases de datos orientadas a objetos
Bases de datos orientadas a objetos
Luis Andres Angarita Machado
 
Bases de datos documentales
Bases de datos documentalesBases de datos documentales
Bases de datos documentales
Pepe
 

La actualidad más candente (20)

Estructura de una base de datos
Estructura de una base de datosEstructura de una base de datos
Estructura de una base de datos
 
Definiciones base de datos
Definiciones base de datosDefiniciones base de datos
Definiciones base de datos
 
base de datos power point
base de datos power pointbase de datos power point
base de datos power point
 
Base De Datos I Completo
Base De Datos I CompletoBase De Datos I Completo
Base De Datos I Completo
 
Clase de informatica base de datos
Clase de informatica   base de datosClase de informatica   base de datos
Clase de informatica base de datos
 
Diapositivas de base de datos
Diapositivas de base de datosDiapositivas de base de datos
Diapositivas de base de datos
 
Introduccion bases de datos
Introduccion bases de datosIntroduccion bases de datos
Introduccion bases de datos
 
Base de datos slideshare
Base de datos slideshareBase de datos slideshare
Base de datos slideshare
 
Bases de datos orientado a objetos
Bases de datos orientado a objetosBases de datos orientado a objetos
Bases de datos orientado a objetos
 
Bases De Datos "Conceptos Basicos"
Bases De Datos "Conceptos Basicos"Bases De Datos "Conceptos Basicos"
Bases De Datos "Conceptos Basicos"
 
diapositivas de informática BASE DE DATOS
diapositivas de informática BASE DE DATOSdiapositivas de informática BASE DE DATOS
diapositivas de informática BASE DE DATOS
 
Conceptos Fundamentales de Base de Datos
Conceptos Fundamentales de Base de DatosConceptos Fundamentales de Base de Datos
Conceptos Fundamentales de Base de Datos
 
Base de datos pres..
Base de datos pres..Base de datos pres..
Base de datos pres..
 
Base de datos ppt
Base de datos pptBase de datos ppt
Base de datos ppt
 
Conclusiones sobre bases de datos
Conclusiones sobre bases de datosConclusiones sobre bases de datos
Conclusiones sobre bases de datos
 
Base de datos multidimensional
Base de datos multidimensionalBase de datos multidimensional
Base de datos multidimensional
 
Exposicion base datos
Exposicion  base datosExposicion  base datos
Exposicion base datos
 
Conceptos basicos
Conceptos basicosConceptos basicos
Conceptos basicos
 
Bases de datos orientadas a objetos
Bases de datos orientadas a objetosBases de datos orientadas a objetos
Bases de datos orientadas a objetos
 
Bases de datos documentales
Bases de datos documentalesBases de datos documentales
Bases de datos documentales
 

Similar a Bd oo presentacion

Presentación Base de Datos Slideshare
Presentación Base de Datos Slideshare Presentación Base de Datos Slideshare
Presentación Base de Datos Slideshare
Thomas Dario Ramos Andrade
 
Bdo r en oracle
Bdo r en oracleBdo r en oracle
Bdo r en oracle
Javier Zabala
 
S0intro
S0introS0intro
S0intro
max7power
 
Base de datos Objeto-Relacional.
Base de datos Objeto-Relacional.Base de datos Objeto-Relacional.
Base de datos Objeto-Relacional.
Juan Raul Vergara
 
03 Oop
03   Oop03   Oop
03 Oop
Network Sens
 
Clases y objetos en Java
Clases y objetos en JavaClases y objetos en Java
Clases y objetos en Java
Daniel Gomez Jaramillo
 
Programación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaProgramación 3: Clases y objetos en Java
Programación 3: Clases y objetos en Java
Angel Vázquez Patiño
 
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptx
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptxResumen Programación Orientada a Objetos 20_06_2023 (1).pptx
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptx
DELIAMARINAHERAZOTUI
 
Conceptos poo
Conceptos pooConceptos poo
Conceptos poo
David Vidal
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
Zamantha Gonzalez Universidad Nacional Abierta
 
Objeto relacional bases datos 2
Objeto relacional bases datos 2Objeto relacional bases datos 2
Objeto relacional bases datos 2
Velmuz Buzz
 
Base de Datos Orientada a Objetos
Base de Datos Orientada a ObjetosBase de Datos Orientada a Objetos
Base de Datos Orientada a Objetos
Andrés Felipe Montoya Ríos
 
Programacion orientada a_objeto
Programacion orientada a_objetoProgramacion orientada a_objeto
Programacion orientada a_objeto
cesar
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
jent46
 
Bases de datos orientado a objetos Exponer
Bases de datos orientado a objetos ExponerBases de datos orientado a objetos Exponer
Bases de datos orientado a objetos Exponer
jorge220395
 
Visualfoxpro
VisualfoxproVisualfoxpro
Visualfoxpro
Juan Andres Mendoza
 
Semana 6 Módulos Clases y Objetos
Semana 6   Módulos Clases y ObjetosSemana 6   Módulos Clases y Objetos
Semana 6 Módulos Clases y Objetos
Richard Eliseo Mendoza Gafaro
 
Capítulo 21 (Estándares, lenguajes y diseño de base de datos de objetos) y Ca...
Capítulo 21 (Estándares, lenguajes y diseño de base de datos de objetos) y Ca...Capítulo 21 (Estándares, lenguajes y diseño de base de datos de objetos) y Ca...
Capítulo 21 (Estándares, lenguajes y diseño de base de datos de objetos) y Ca...
Liz Ocampo
 
Benita ppp unidad 1
Benita ppp unidad 1Benita ppp unidad 1
Benita ppp unidad 1
TAtiizz Villalobos
 
Tema 1 2_poo
Tema 1 2_pooTema 1 2_poo
Tema 1 2_poo
demon_628
 

Similar a Bd oo presentacion (20)

Presentación Base de Datos Slideshare
Presentación Base de Datos Slideshare Presentación Base de Datos Slideshare
Presentación Base de Datos Slideshare
 
Bdo r en oracle
Bdo r en oracleBdo r en oracle
Bdo r en oracle
 
S0intro
S0introS0intro
S0intro
 
Base de datos Objeto-Relacional.
Base de datos Objeto-Relacional.Base de datos Objeto-Relacional.
Base de datos Objeto-Relacional.
 
03 Oop
03   Oop03   Oop
03 Oop
 
Clases y objetos en Java
Clases y objetos en JavaClases y objetos en Java
Clases y objetos en Java
 
Programación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaProgramación 3: Clases y objetos en Java
Programación 3: Clases y objetos en Java
 
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptx
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptxResumen Programación Orientada a Objetos 20_06_2023 (1).pptx
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptx
 
Conceptos poo
Conceptos pooConceptos poo
Conceptos poo
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
Objeto relacional bases datos 2
Objeto relacional bases datos 2Objeto relacional bases datos 2
Objeto relacional bases datos 2
 
Base de Datos Orientada a Objetos
Base de Datos Orientada a ObjetosBase de Datos Orientada a Objetos
Base de Datos Orientada a Objetos
 
Programacion orientada a_objeto
Programacion orientada a_objetoProgramacion orientada a_objeto
Programacion orientada a_objeto
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
Bases de datos orientado a objetos Exponer
Bases de datos orientado a objetos ExponerBases de datos orientado a objetos Exponer
Bases de datos orientado a objetos Exponer
 
Visualfoxpro
VisualfoxproVisualfoxpro
Visualfoxpro
 
Semana 6 Módulos Clases y Objetos
Semana 6   Módulos Clases y ObjetosSemana 6   Módulos Clases y Objetos
Semana 6 Módulos Clases y Objetos
 
Capítulo 21 (Estándares, lenguajes y diseño de base de datos de objetos) y Ca...
Capítulo 21 (Estándares, lenguajes y diseño de base de datos de objetos) y Ca...Capítulo 21 (Estándares, lenguajes y diseño de base de datos de objetos) y Ca...
Capítulo 21 (Estándares, lenguajes y diseño de base de datos de objetos) y Ca...
 
Benita ppp unidad 1
Benita ppp unidad 1Benita ppp unidad 1
Benita ppp unidad 1
 
Tema 1 2_poo
Tema 1 2_pooTema 1 2_poo
Tema 1 2_poo
 

Último

Análisis de Crowdfunding con el maestro Tapia de Artes
Análisis de Crowdfunding con el maestro Tapia de ArtesAnálisis de Crowdfunding con el maestro Tapia de Artes
Análisis de Crowdfunding con el maestro Tapia de Artes
al050121024
 
APLICACIONES DE INTERNET-INFORMATICA.pptx
APLICACIONES DE INTERNET-INFORMATICA.pptxAPLICACIONES DE INTERNET-INFORMATICA.pptx
APLICACIONES DE INTERNET-INFORMATICA.pptx
cpadua713
 
LA NUBE YULIANA GABRIELA CORI NINARAQUE.pdf
LA NUBE YULIANA GABRIELA CORI NINARAQUE.pdfLA NUBE YULIANA GABRIELA CORI NINARAQUE.pdf
LA NUBE YULIANA GABRIELA CORI NINARAQUE.pdf
YulianaCori
 
ESTUDIANTES BENEFICIARIOS que se suman a los beneficios de la universidad
ESTUDIANTES BENEFICIARIOS que se suman a los beneficios de la universidadESTUDIANTES BENEFICIARIOS que se suman a los beneficios de la universidad
ESTUDIANTES BENEFICIARIOS que se suman a los beneficios de la universidad
jorgejhonatanaltamir1
 
Oración a Pomba Gira María Padilha .docx
Oración a Pomba Gira María Padilha .docxOración a Pomba Gira María Padilha .docx
Oración a Pomba Gira María Padilha .docx
LuisAlbertoCordovaBa
 
Oruam, el pequeño y el gran carismatico mago
Oruam, el pequeño y el gran carismatico magoOruam, el pequeño y el gran carismatico mago
Oruam, el pequeño y el gran carismatico mago
ChichipeSevillaJhost
 
TRABAJO APLICACIONES EN INTERNET - Ana cruz tone.pdf
TRABAJO APLICACIONES EN INTERNET - Ana cruz tone.pdfTRABAJO APLICACIONES EN INTERNET - Ana cruz tone.pdf
TRABAJO APLICACIONES EN INTERNET - Ana cruz tone.pdf
anacruztone06
 
SLIDESHARE, qué es, ventajas y desventajas
SLIDESHARE, qué es, ventajas y desventajasSLIDESHARE, qué es, ventajas y desventajas
SLIDESHARE, qué es, ventajas y desventajas
ruthechepurizaca
 
Sesión N°10 / Monografía sobre la inteligencia artifical
Sesión N°10 / Monografía sobre la inteligencia artificalSesión N°10 / Monografía sobre la inteligencia artifical
Sesión N°10 / Monografía sobre la inteligencia artifical
Angeles del Rosario Escobar Mendoza
 
Herramientas de la web 2.0.pptx
Herramientas    de     la    web    2.0.pptxHerramientas    de     la    web    2.0.pptx
Herramientas de la web 2.0.pptx
anittaeunice
 
FICHA DE EDUCACIÓN RELIGIOSA 17 DE CTUBRE LA oracion.docx
FICHA DE EDUCACIÓN RELIGIOSA  17 DE CTUBRE LA  oracion.docxFICHA DE EDUCACIÓN RELIGIOSA  17 DE CTUBRE LA  oracion.docx
FICHA DE EDUCACIÓN RELIGIOSA 17 DE CTUBRE LA oracion.docx
EmilyEsmeraldaQuispe
 
MONOGRAFRIA GOOGLE (grupo 1ro de google).pdf
MONOGRAFRIA GOOGLE (grupo 1ro de google).pdfMONOGRAFRIA GOOGLE (grupo 1ro de google).pdf
MONOGRAFRIA GOOGLE (grupo 1ro de google).pdf
darilpisco021
 
Documento A4 formas curvas Hoja de papel multicolor_20240615_213856_0000.pdf
Documento A4 formas curvas Hoja de papel multicolor_20240615_213856_0000.pdfDocumento A4 formas curvas Hoja de papel multicolor_20240615_213856_0000.pdf
Documento A4 formas curvas Hoja de papel multicolor_20240615_213856_0000.pdf
sthefannydelgado765
 
PPT_QUÍMICA GENERAL_TEO_SEM-09_SESIÓN-17_2024_Gases ideales (2).pdf
PPT_QUÍMICA GENERAL_TEO_SEM-09_SESIÓN-17_2024_Gases ideales  (2).pdfPPT_QUÍMICA GENERAL_TEO_SEM-09_SESIÓN-17_2024_Gases ideales  (2).pdf
PPT_QUÍMICA GENERAL_TEO_SEM-09_SESIÓN-17_2024_Gases ideales (2).pdf
josenestorlopezquisp1
 
COMUNIDADES DE APRENDIZAJE EN EL CURSO DE APLICACIONES PARA INTERNET
COMUNIDADES DE APRENDIZAJE EN EL CURSO DE APLICACIONES PARA INTERNETCOMUNIDADES DE APRENDIZAJE EN EL CURSO DE APLICACIONES PARA INTERNET
COMUNIDADES DE APRENDIZAJE EN EL CURSO DE APLICACIONES PARA INTERNET
Kevin Aguilar Garcia
 
extraccion-de-alcaloides-de-la-planta-de-coca.pdf
extraccion-de-alcaloides-de-la-planta-de-coca.pdfextraccion-de-alcaloides-de-la-planta-de-coca.pdf
extraccion-de-alcaloides-de-la-planta-de-coca.pdf
JENNYMARITZAHUILLCAR
 
COMO EVOLUCIONO LAS WEB EN PLENO 2024.docx
COMO EVOLUCIONO LAS WEB EN PLENO 2024.docxCOMO EVOLUCIONO LAS WEB EN PLENO 2024.docx
COMO EVOLUCIONO LAS WEB EN PLENO 2024.docx
Jean Apellidos
 

Último (17)

Análisis de Crowdfunding con el maestro Tapia de Artes
Análisis de Crowdfunding con el maestro Tapia de ArtesAnálisis de Crowdfunding con el maestro Tapia de Artes
Análisis de Crowdfunding con el maestro Tapia de Artes
 
APLICACIONES DE INTERNET-INFORMATICA.pptx
APLICACIONES DE INTERNET-INFORMATICA.pptxAPLICACIONES DE INTERNET-INFORMATICA.pptx
APLICACIONES DE INTERNET-INFORMATICA.pptx
 
LA NUBE YULIANA GABRIELA CORI NINARAQUE.pdf
LA NUBE YULIANA GABRIELA CORI NINARAQUE.pdfLA NUBE YULIANA GABRIELA CORI NINARAQUE.pdf
LA NUBE YULIANA GABRIELA CORI NINARAQUE.pdf
 
ESTUDIANTES BENEFICIARIOS que se suman a los beneficios de la universidad
ESTUDIANTES BENEFICIARIOS que se suman a los beneficios de la universidadESTUDIANTES BENEFICIARIOS que se suman a los beneficios de la universidad
ESTUDIANTES BENEFICIARIOS que se suman a los beneficios de la universidad
 
Oración a Pomba Gira María Padilha .docx
Oración a Pomba Gira María Padilha .docxOración a Pomba Gira María Padilha .docx
Oración a Pomba Gira María Padilha .docx
 
Oruam, el pequeño y el gran carismatico mago
Oruam, el pequeño y el gran carismatico magoOruam, el pequeño y el gran carismatico mago
Oruam, el pequeño y el gran carismatico mago
 
TRABAJO APLICACIONES EN INTERNET - Ana cruz tone.pdf
TRABAJO APLICACIONES EN INTERNET - Ana cruz tone.pdfTRABAJO APLICACIONES EN INTERNET - Ana cruz tone.pdf
TRABAJO APLICACIONES EN INTERNET - Ana cruz tone.pdf
 
SLIDESHARE, qué es, ventajas y desventajas
SLIDESHARE, qué es, ventajas y desventajasSLIDESHARE, qué es, ventajas y desventajas
SLIDESHARE, qué es, ventajas y desventajas
 
Sesión N°10 / Monografía sobre la inteligencia artifical
Sesión N°10 / Monografía sobre la inteligencia artificalSesión N°10 / Monografía sobre la inteligencia artifical
Sesión N°10 / Monografía sobre la inteligencia artifical
 
Herramientas de la web 2.0.pptx
Herramientas    de     la    web    2.0.pptxHerramientas    de     la    web    2.0.pptx
Herramientas de la web 2.0.pptx
 
FICHA DE EDUCACIÓN RELIGIOSA 17 DE CTUBRE LA oracion.docx
FICHA DE EDUCACIÓN RELIGIOSA  17 DE CTUBRE LA  oracion.docxFICHA DE EDUCACIÓN RELIGIOSA  17 DE CTUBRE LA  oracion.docx
FICHA DE EDUCACIÓN RELIGIOSA 17 DE CTUBRE LA oracion.docx
 
MONOGRAFRIA GOOGLE (grupo 1ro de google).pdf
MONOGRAFRIA GOOGLE (grupo 1ro de google).pdfMONOGRAFRIA GOOGLE (grupo 1ro de google).pdf
MONOGRAFRIA GOOGLE (grupo 1ro de google).pdf
 
Documento A4 formas curvas Hoja de papel multicolor_20240615_213856_0000.pdf
Documento A4 formas curvas Hoja de papel multicolor_20240615_213856_0000.pdfDocumento A4 formas curvas Hoja de papel multicolor_20240615_213856_0000.pdf
Documento A4 formas curvas Hoja de papel multicolor_20240615_213856_0000.pdf
 
PPT_QUÍMICA GENERAL_TEO_SEM-09_SESIÓN-17_2024_Gases ideales (2).pdf
PPT_QUÍMICA GENERAL_TEO_SEM-09_SESIÓN-17_2024_Gases ideales  (2).pdfPPT_QUÍMICA GENERAL_TEO_SEM-09_SESIÓN-17_2024_Gases ideales  (2).pdf
PPT_QUÍMICA GENERAL_TEO_SEM-09_SESIÓN-17_2024_Gases ideales (2).pdf
 
COMUNIDADES DE APRENDIZAJE EN EL CURSO DE APLICACIONES PARA INTERNET
COMUNIDADES DE APRENDIZAJE EN EL CURSO DE APLICACIONES PARA INTERNETCOMUNIDADES DE APRENDIZAJE EN EL CURSO DE APLICACIONES PARA INTERNET
COMUNIDADES DE APRENDIZAJE EN EL CURSO DE APLICACIONES PARA INTERNET
 
extraccion-de-alcaloides-de-la-planta-de-coca.pdf
extraccion-de-alcaloides-de-la-planta-de-coca.pdfextraccion-de-alcaloides-de-la-planta-de-coca.pdf
extraccion-de-alcaloides-de-la-planta-de-coca.pdf
 
COMO EVOLUCIONO LAS WEB EN PLENO 2024.docx
COMO EVOLUCIONO LAS WEB EN PLENO 2024.docxCOMO EVOLUCIONO LAS WEB EN PLENO 2024.docx
COMO EVOLUCIONO LAS WEB EN PLENO 2024.docx
 

Bd oo presentacion

  • 1. IES SAN VICENTE - 2º ASI – SGBD
  • 2. INTRODUCCIÓN  Las BD tradicionales presentan deficiencias.  La orientación a objetos ofrece: flexibilidad, no está limitada. La característica clave es la potencia.  Las BDOO se pueden integrar en aplicaciones con lenguajes orientados a objetos y para simplificar la POO.  Una SGBDOO es una SGBD que almacena objetos incorporando así todas las ventajas de la OO.  ODMG (Object Database Mangement Group) es el grupo de fabricantes de SGBDOO que propuso el estándar  El uso del estándar proporciona: portabilidad, interoperabilidad y además permite que los usuarios puedan comparar entre distintos sistemas comerciales.
  • 3. VENTAJAS  Mayor capacidad de modelado  Ampliabilidad  Lenguaje de consulta más expresivo.  Adecuación a las aplicaciones avanzadas de base de datos.  Mayores prestaciones.
  • 4. DESVENTAJAS  Carencia de un modelo de datos universal.  Carencia de experiencia.  Carencia de estándares.  Competencia. Con respecto a los SGBDR y los SGBDOR.  La optimización de consultas compromete la encapsulación.  El modelo de objetos aún no tiene una teoría matemática coherente que le sirva de base.
  • 5. MANIFIESTOS DE LAS SGBDOO  Manifiesto de los Sistemas de Bases de Datos al Objeto puras, ATKINSON, 1989:  Manifiesto de los SBD de Tercera Generación, STONEBRAKER, 1990:  Tercer manifiesto, DARWEN y DATE 1995:
  • 6. MODELO ESTÁNDAR ODMG (I)  MODELO DE OBJETOS Primitivas de modelado:  Componentes básicos son objetos y literales.  Se categorizan en tipos.  Lo que un objeto sabe hacer son sus operaciones.  Las propiedades son sus atributos y las relaciones.  Una base de datos es un conjunto de objetos almacenados que pueden ser accedidos por múltiples usuarios y aplicaciones.  La definición de una base de datos está contenida en un esquema que se ha creado mediante el lenguaje de definición de objetos ODL.
  • 7. MODELO ESTÁNDAR ODMG (2)  MODELO DE OBJETOS (2)  OBJETOS ○ Colección (para las clases contenedor) son: ○ Set<tipo>: Grupo desordenado de objetos del mismo tipo. No se permiten duplicados. ○ Bag<tipo>: Grupo desordenado de objetos del mismo tipo. Se permiten duplicados. ○ List<tipo>: Grupo ordenado de objetos del mismo tipo. Se permite duplicados. ○ Array<tipo>: Grupo ordenado de objetos del mismo tipo que se puede acceder por su posición. El tamaño es dinámico. ○ Dictionary<clave,valor>: índice. Formado por las clavez ordenadas, emparejada con un solo valor. ○ estructurado: ○ Date: fecha del calendario ○ Time: hora. ○ Timestamp: hora de una fecha. ○ Interval: período de tiempo.
  • 8. MODELO ESTÁNDAR ODMG (3)  MODELO DE OBJETOS (3)  LITERALES ○ Los atómicos son:  Boolean: verdadero o falso.  Short: entero con signo de 8 o 16 bits.  Long: entero con signo de 32 o 64 bits.  Unsigned short: entero sin signo de 8 o 16 bits.  Unsigned long: entero sin signo de 32 o 64 bits.  Float: valor real en coma flotante de simple precisión.  Double: valor real en coma flotante de doble precisión  Octet: almacén de 8 bits.  Char: carácter ASCII o UNICODE.  String: cadena de caracteres.  Enum: tipo enumerado donde los valores se especifican explícitamente cuando se declara el tipo. ○ Estructurales: date, time, timestamp, interval y struct. ○ Los de colección son: set<tipo>, bag<tipo>, listo<tipo>, array<tipo> y dictionaru<clave,valor>.
  • 9. MODELO ESTÁNDAR ODMG (4)  MODELO DE OBJETOS (4)  TIPOS ○ Interface (equivalente a una clase abstracta). ○ Clase (equivalente a una clase concreta). ○ Soporta la herencia simple y la herencia múltiple mediante las interfaces. ○ Se puede hacer referencia a los subtipo como su supertipo. Los subtipo se pueden especializar como sea necesario. ○ La relación extiende (extends) para indicar la herencia de estado y de comportamiento.. ○ Extensión (extent) tiene un nombre e incluye todas las instancias de objetos persistentes. ○ Puede tener una o más claves (key). ○ La representación es una estructura de datos. ○ Los detalles de las operaciones de un tipo se especifican mediante un conjunto de métodos.
  • 10. MODELO ESTÁNDAR ODMG (5)  MODELO DE OBJETOS (5)  Propiedades ○ Atributos ○ Relaciones. Sólo soporta relaciones binarias (1:1, 1:n, n:m).  Transacciones ○ Son unidades lógicas de trabajo que llevan a la base de datos de un estado consistente a otro estado consistente
  • 11. MODELO ESTÁNDAR ODMG (6)  ODL (Object Definition Language)  Lenguaje de especificación  Es el equivalente de DDL (Data Definition Languaje o lenguaje de definición de datos) de los DBMS tradicionales  Las declaraciones de atributos son sintácticamente idénticas las declaraciones de miembros de C++.  Ver ejemplo.
  • 12. MODELO ESTÁNDAR ODMG (9)  OQL:  Permite realizar consultas de modo eficiente sobre bases de datos orientadas a objetos. Basado en SQL-92.  La sintaxis: SELECT… FROM… WHERE… : ○ SELECT d.nombre ○ FROM d in departamentos ○ WHERE d.escuela=”Ingeniería”;  Es necesario utilizar una variable iteradora. Estas se puede especificar de estas formas: ○ D in departamentos ○ Departamentos d ○ Departamentos as d
  • 13. MODELO ESTÁNDAR ODMG (10)  OQL (2)  El nombre de cualquier objeto persistente es una consulta: ○ departamentos;  Si se da nombre a un objeto concreto. Por ejemplo: departamentoinf; al departamento de informatica, se devuelve una referencia a ese objeto individual: ○ departamentoinf.director; ○ departamentoinf.director.categoria: ○ departamentoinf.tiene_profesores;
  • 14. MODELO ESTÁNDAR ODMG (11)  OQL (3)  Ejemplo que muestra los nombres y apellidos de los estudiantes y lo títulos que tiene cada uno: ○ Select struct(nombre: struct(ape1: e.nombre.apellido1, ○ ape2: e.nombre.apellido2, ○ nom: e.nombre.nombre_pila), ○ titulos: (Select struct(tit: t.titulo, ○ año: t.año, ○ esc: t.escuela) ○ From t in e.titulos) ○ From e in departamentoinf.director.tutoriza;  OQL es ortogonal respecto a la especificación de expresiones de caminos.
  • 15. MODELO ESTÁNDAR ODMG (12)  OQL (4)  Otras características: ○ Especificación de vistas dando nombres a consultas. ○ Obtención como resultado de un solo elemento. ○ Uso de operadores de colecciones: funciones agregados y cuantificadores. ○ Uso de group by.
  • 16. ORACLE  Para crear tipo de objetos utilizamos CREATE TYPE. Ejemplo: CREATE TYPE persona AS OBJECT( Nombre VARCHAR2(30), Telefono VARCHAR2(20) );  Un tabla relacional tiene una columna cuyo tipo es un objeto: objetos columna. Ejemplo: CREATE TABLE contactos( Contacto persona, Fecha DATE );
  • 17. ORACLE (2)  Se puede incluir una clausula default: CREATE TABLE departamento( Num_dept VARCHAR2(5) PRIMARY KEY, Nombre_dept VARCHAR2(20), Director persona DEFAULT persona(1,’Pepe Pérez’,NULL), Empleados gente DEFAULT gente( persona(2,’Ana López’,’C/ del pez, 5’) persona(3,’Eva García’,NULL) ) ) NESTED TABLE empleados STORE AS empleados_tab  Las columnas que son tablas anidadas y los atributos que son tablas de objetos requieren una tabla a parte donde almacenar las filas de dichas tablas. Se especifica con NESTED TABLE… STORE AS…
  • 18. ORACLE (3)  Definir una clave primaria sobre una tabla de objetos: CREATE TYPE persona AS OBJECT( Id NUMBER, Nombre VARCHAR2(30), Direccion VARCHAR2(30), Oficina ubicación ); CREATE TABLE empleados OF persona( Id PRIMARY KEY );  También se pueden definir disparadores: CREATE TRIGGER disparador AFTER UPDATE OF despacho ON empleados FOR EACH ROW WHEN new.despacho.ciudad=’Castellon’ BEGIN IF (:new.despacho.num_edificio=600) THEN INSERT INTO traslado (id, despacho_antiguo, despacho_nuevo) VALUES (:old.id, :old.despacho, :new.despacho); END IF; END;
  • 19. ORACLE (4)  METODOS: Son funciones o procedimientos que se pueden declarar en la definición de un tipo de objeto para implementar el comportamiento que se desea para dicho tipo de objeto. CREATE TYPE BODY racional AS MEMBER PROCEDURE normaliza IS g INTEGER; BEGIN g := gcd(SELF.num, SELF.den); g := gcd(num, den); -- equivale a la linea anterior num :=num/g; den :=den/g; END normaliza; …. END;
  • 20. ORACLE (5)  Dos tipos: Varray , Tabla anidada CREATE TYPE precios AS VARRAY(10) OF NUMBRE (12,2); CREATE TYPE lineaped_tabla AS TABLE OF lineaped;  Se pueden consultar con resultados anidados y sin anidar: SELECT e.nombre, e.proyectos FROM empledos e NOMBRE PROYECTOS -------------- -------------------- ‘Pedro’ tab_proyecto(67,82) ‘Juan’ tab_proyecto(22,67,97) SELECT e.nombre, p.* FROM empleados e, TABLE(e.proyectos) p; NOMBRE PROYECTOS -------------- -------------------- ‘Pedro’ 67 ‘Pedro’ 82 ‘Juan’ 22 ‘Juan’ 67 ‘Juan’ 97
  • 21. ORACLE (6)  Herencia de tipos  Para crear un subtipo se utiliza la cláusula UNDER: CREATE TYPE estudiante UNDER persona(…, Titulacion VARCHAR(30), Fecha-ingreso DATE ) NOT FINAL;
  • 22. ORACLE (7)  Funciones y predicados útiles con objetos  VALUE: devuelve instancias de objetos correspondientes a las filas de la tabla. SELECT VALUE(p) FROM personas_tab p WHERE p.direccion LIKE ‘C/Mayor%’;  REF: toma como parámetro un alias de tabla y devuelve una referencia a una instancia de un objeto de dicha tabla.  IS OF comprobar el nivel de especialización SELECT VALUE(p) FROM personas_tab p WHERE VALUE(p) IS OF (estudiante);  TREAT: trata a una instancia de un supertipo como una instancia de uno de sus subtipos. SELECT TREAT(VALUE(p) AS estudiante) FROM personas_tab p WHERE VALUE(p) IS OF (ONLY estudiante);
  • 23. BIBLIOGRAFÍA  www.odbms.org  http://es.wikipedia.org/wiki/Base_de_datos  http://es.wikipedia.org/wiki/Base_de_datos_orientada_a_objetos  http://www.itescam.edu.mx/principal/sylabus/fpdb/recursos/r23897.PDF  http://tejo.usal.es/~fgarcia/docencia/poo/02-03/trabajos/S1T3.pdf  http://www3.uji.es/~mmarques/e16/teoria/cap2.pdf  http://www.cs.cinvestav.mx/BDChapa/Beto/Blanco.htm  http://tejo.usal.es/~fgarcia/docencia/poo/03-04/Trabajos/SGBDOO.pdf  http://basesdatos.uc3m.es/fileadmin/Docencia/BDA-II/teoria/BDOO.pdf  www.bdoo.wordpress.com