Base De Datos Avanzadas
Tema 2
Aspectos Avanzados del Modelo
Relacional
Univ. Cantabria – Fac. de Ciencias
Francisco Ruiz
Agradecimientos
•
Este material ha sido preparado con la colaboración de:
Belén Vela (Univ. Rey Juan Carlos)
Mario Piattini (Univ. de Castilla-La Mancha)
Coral Calero (Univ. de Castilla-La Mancha)
Francisco Ruiz - BDA
2.2
Objetivos
•
•
•
••
Conocer el concepto de comportamiento activo en una base
de datos y aprender a utilizar disparadores (triggers) mpara
incorporar actividad a las bases de datos relacionales.
Aprender a crear disparadores en SQL.
Conocer las formas de usar el lenguaje SQL de forma
programática para acceder a los datos desde entornos
diferentes al SQL interactivo.
Aprender a utilizar SQL embebido, tanto enforma estática
como dinámica.
Aprender la manera en que SQL permite trabajar con
módulos persistentes (procedimientos y funciones
almacenados) y la manera en que se puede acceder a las
tablas de la base de datos desde ellos usando cursores).
Francisco Ruiz - BDA
2.3
Contenido
•
•
•
•
•
Bases de Datos Activas
Comportamiento Activo
SGBD Activos
Reglas ECA
Ejecución
•Disparadores
En SQL:2003
SQL Programático
Otras Opciones
•
Consultas
Cursores
Implementaciones
SQL Embebido
SQLJ
Dinámico
SQLJ vs JDBC
Otros Aspectos
Recursividad
SQL/CLI
JDBC
Módulos Persistentes
Rutinas
Estructuras de Control
Excepciones
Francisco Ruiz - BDA
2.4
Bibliografía
• Básica
Piattini et al. (2006): Tecnología y Diseño de Bases de
Datos.Cap. 18.
Elmasri y Navathe (2007): Fundamentos de Sistemas de
Bases de Datos.
Caps. 9 y 24.
• Complementaria
Piattini et al. (2006): Tecnología y Diseño de Bases de
Datos.
Cap. 8.
Connolly y Begg (2005): Sistemas de Bases de Datos.
Anexo E.
Francisco Ruiz - BDA
2.5
Bases de Datos Activas
•
Motivación
Nuevas tendencias en BD: GIS, BD Multimedia, BD XML
… BD ActivasBD convencionales se consideran muertas o pasivas y
no pueden manejar ciertas situaciones
Ejemplo: actualizar las rutas de un autobús escolar con
cada incorporación de nuevos alumnos a la escuela.
1. Supervisar cada matrícula nueva
2. Comprobar periódicamente las direcciones de los alumnos
matriculados
Bases de Datos
Activas
Francisco Ruiz - BDA
2.6
Bases de Datos Activas –Comportamiento Activo
Comportamiento Pasivo
•
•
•
El marido sabe cómo cocinar
La esposa solicita explícitamente al marido que lo haga
Roles: objeto fuente (realiza petición: mujer) vs objeto receptor (recibe
petición: marido)
Francisco Ruiz - BDA
2.7
Bases de Datos Activas – Comportamiento Activo
Comportamiento Activo
•
•
El marido sabe cómo cocinar y cuándo cocinar
Roles:objeto observador (marido) VS objeto observado (mujer)
Francisco Ruiz - BDA
2.8
Bases de Datos Activas – Comportamiento Activo
Comportamiento Activo
•
•
Comportamiento Activo = CUÁNDO + QUÉ
Ejemplos:
Gestión de Stocks:
cuando ITEM < 10
entonces solicitar nuevo ITEM al proveedor
Productos Perecederos
cuando producto.caduca - fecha_actual < 7
entonces reducir el preciodel producto
Gestión de Autobuses
cuando autobús lleno y falte más de una semana para el viaje
entonces poner autobús adicional
Francisco Ruiz - BDA
2.9
Bases de Datos Activas – Comportamiento Activo
Comportamiento Activo
• Podemos recoger ese comportamiento en las aplicaciones que acceden a la BD
APLICACIÓN
APLICACIÓN
Sistema
Matriculación
Gestión
Campus A
CUANDO ….ENTONCES …..
SGBD
Datos Alumnos
Datos Titulaciones
Datos Autobús
….
APLICACIÓN
CUANDO ….
ENTONCES …..
Gestión
Campus B
CUANDO ….
ENTONCES …..
Francisco Ruiz - BDA
•
•
Pérdida de Modularidad
Semántica Distribuida
2.10
Bases de Datos Activas – Comportamiento Activo
•
Comportamiento Activo
O en una aplicación específica.
APLICACIÓN
Sistema
Matriculación...
Regístrate para leer el documento completo.