• No se han encontrado resultados

BASES DE DATOS ACTIVAS

N/A
N/A
Protected

Academic year: 2021

Share "BASES DE DATOS ACTIVAS"

Copied!
75
0
0

Texto completo

(1)

BASES DE DATOS ACTIVAS

 INTRODUCCIÓN.

 RESTRICCIONES DE INTEGRIDAD Y REGLAS DE NEGOCIO.

 TRANSACCIONES.

 BASES DE DATOS ACTIVAS. CONCEPTOS.

 GESTOR PASIVO VS. ACTIVO.

 VENTAJAS.

 APLICACIONES.

 REGLAS EN BASES DE DATOS RELACIONALES.

 LAS REGLAS DE CODD PARA SISTEMAS GESTORES DE BASES DE DATOS RELACIONALES.

(2)
(3)

INTRODUCCIÓN

 EL MODELO DE DATOS RELACIONAL FUE INTRODUCIDO POR TED CODD, DE IBM, EN 1970.

 SE BASA EN LOS CONCEPTOS DE:  RELACIÓN MATEMÁTICA.  TEORÍA DE CONJUNTOS.

(4)

BD RELACIONALES Y ACTIVAS 4

INTRODUCCIÓN

DATO OPERATIVO:

 TODO ELEMENTO DE INFORMACIÓN QUE NECESITA UNA ORGANIZACIÓN PARA SU FUNCIONAMIENTO.

INDEPENDENCIA FÍSICA:

 EL ALMACENAMIENTO FÍSICO DE LOS DATOS DEBE SER INDEPENDIENTE DEL DISEÑO LÓGICO DE LA BF A TODOS LOS NIVELES.

INDEPENDENCIA LÓGICA:

 LA PERCEPCIÓN QUE CADA PROGRAMA TIENE DE LA ESTRUCTURA LÓGICA DE LA BD (VISTA DE USUARIO) DEBE PERMANECER INMUTABLE A NIVEL LÓGICO EN DICHA ESTRUCTURA.

ENTIDADES:

 UNA ENTIDAD SE DEFINE COMO UN OBJETO QUE EXISTE Y QUE ES DISTINGUIBLE DE LOS DEMÁS:

(5)

INTRODUCCIÓN

ATRIBUTOS:

 SON LAS PROPIEDADES QUE CARACTERIZAN UN CONJUNTO DE ENTIDADES.

DEPENDENCIA EXISTENCIAL:

SEAN A Y B DOS CONJUNTOS DE ENTIDADES. SE DICE QUE B DEPENDE EXISTENCIALMENTE DE A SI CUMPLE:

  T ϵ A X B /b ϵ B →a ϵ A / (a, b) ϵ T.

 ES IMPOSIBLE IDENTIFICAR A b SIN IDENTIFICAR

PREVIAMENTE A a.

ASOCIACIONES O RELACIONES:

 UNA RELACIÓN ES UNA CONEXIÓN SEMÁNTICA ENTRE DOS O MÁS CONJUNTOS DE ENTIDADES.

ESPECIALIZACIÓN:

(6)
(7)
(8)
(9)
(10)
(11)
(12)

BD RELACIONALES Y ACTIVAS 12

RESTRICCIONES DE INTEGRIDAD Y

REGLAS DE NEGOCIO

SQL PERMITE INCORPORAR LA DEFINICIÓN DE RESTRICCIONES EN LA DEFINICIÓN DE LA TABLA:

EL SISTEMA CONTROLARÁ LA INTEGRIDAD DE LOS DATOS QUE SE CARGUEN.

 LAS RESTRICCIONES PUEDEN SER.

DE INTEGRIDAD DE ENTIDAD Y REFERENCIAL.ESPECÍFICAS.

EJ.: RESTRICCIÓN DE CLAVE PRIMARIA PARA LA COLUMNA DNI DE LA TABLA ALUMNOS:

CREATE TABLE alumnos (

(13)

RESTRICCIONES DE INTEGRIDAD Y

REGLAS DE NEGOCIO

EJ.: RESTRICCIONES DE INTEGRIDAD ASOCIADAS A LA TABLA PARA UN CONJUNTO DE COLUMNAS:

CREATE TABLE matriculas ( cod_asig CHAR (4), cod_grup CHAR (4), tipo CHAR (1), DNI CHAR (8), convocatoria NUMBER, calificacion NUMBER,

PRIMARY KEY (cod_asig, cod_grup, tipo, DNI, convocatoria)

(14)

BD RELACIONALES Y ACTIVAS 14

RESTRICCIONES DE INTEGRIDAD Y

REGLAS DE NEGOCIO

EJ.: RESTRICCIÓN DE UNICIDAD DE LOS VALORES DE UNA COLUMNA:

CREATE TABLE asignaturas (

cod_asig CHAR (4) PRIMARY KEY, nom_asig VARCHAR2 (30) UNIQUE, creditos NUMBER (4, 1),

(15)

RESTRICCIONES DE INTEGRIDAD Y

REGLAS DE NEGOCIO

EJ.: RESTRICCIÓN DE VALORES NULOS: CREATE TABLE profesores (

NRP CHAR (8) PRIMARY KEY,

nom_prof VARCHAR2 (35) NOT NULL, categoria CHAR (4),

(16)

BD RELACIONALES Y ACTIVAS 16

RESTRICCIONES DE INTEGRIDAD Y

REGLAS DE NEGOCIO

EJ.: RESTRICCIÓN DE RANGO DE VALORES PERMITIDOS EN UNA COLUMNA:

CREATE TABLE aulas (

cod_aula CHAR (4) PRIMARY KEY,

capacidad NUMBER CHECK (capacidad BETWEEN 0 AND 150)

(17)

RESTRICCIONES DE INTEGRIDAD Y

REGLAS DE NEGOCIO

 EJEMPLOS: DEFINICIÓN DE CLAVES EXTERNAS PARA

RELACIONAR COLUMNAS DE DISTINTAS TABLAS (INTEGRIDAD REFERENCIAL):

CREATE TABLE matriculas ( cod_asig CHAR (4), cod_grup CHAR (4), tipo CHAR (1),

DNI CHAR (8) REFERENCES alumnos (DNI), convocatoria NUMBER,

calificacion NUMBER,

PRIMARY KEY (cod_asig, cod_grup, tipo, DNI, convocatoria),

(18)

BD RELACIONALES Y ACTIVAS 18

RESTRICCIONES DE INTEGRIDAD Y

REGLAS DE NEGOCIO

CREATE TABLE grupos ( cod_asig CHAR (4), cod_grup CHAR (4),

tipo CHAR (1) CHECK (Tipo IN (‘T’, ‘P’)), NRP CHAR (4),

max_al INT CHECK (max_al BETWEEN 10 AND 150), PRIMARY KEY (cod_asig, cod_grup, tipo),

FOREING KEY cod_asig REFERENCES asignaturas (cod_asig),

(19)

RESTRICCIONES DE INTEGRIDAD Y

REGLAS DE NEGOCIO

EJ.: DEFINICIÓN DE VALORES POR DEFECTO: CREATE TABLE matriculas (

cod_asig CHAR (4), cod_grup CHAR (4), tipo CHAR (1),

DNI CHAR (8) REFERENCES alumnos (DNI), convocatoria NUMBER DEFAULT 1,

calificacion NUMBER CONSTRAINT restric-rangocalif CHECK ((calificacion>=0) AND (calificacion <=10)),

PRIMARY KEY (cod_asig, cod_grup, tipo, DNI, convocatoria),

(20)
(21)
(22)
(23)
(24)
(25)

TRANSACCIONES

TRANSACCIÓN ES UN CONJUNTO DE OPERACIONES DE MANIPULACIÓN DE DATOS QUE DEBEN SER CONSIDERADAS COMO UNA UNIDAD.:

ES UNA UNIDAD ATÓMICA DE TRABAJO QUE SE REALIZA POR COMPLETO O BIEN NO SE EFECTÚA EN ABSOLUTO.

EL GESTOR DE RECUPERACIÓN DEL SGBD DEBE MANTENERSE AL TANTO DE LAS SIGUIENTES OPERACIONES:

BEGIN_TRANSACTION (inicio_de_transacción):

 MARCA EL PRINCIPIO DE LA EJECUCIÓN DE LA

TRANSACCIÓN.

READ (leer) o WRITE (escribir):

 ESPECIFICAN OPERACIONES DE LECTURA O ESCRITURA

(26)

BD RELACIONALES Y ACTIVAS 26

TRANSACCIONES

END_TRANSACTION (fin_de_transacción):

 ESPECIFICA QUE LAS OPERACIONES DE LEER O ESCRIBIR

DE LA TRANSACCIÓN HAN TERMINADO Y MARCA EL FIN DE LA EJECUCIÓN DE LA TRANSACCIÓN.

PUEDE SER NECESARIO VERIFICAR:

• SI LOS CAMBIOS INTRODUCIDOS SE PUEDEN APLICAR PERMANENTEMENTE A LA BD (CONFIRMAR).

• SI LA TRANSACCIÓN PUEDE ABORTAR PORQUE VIOLA LA SERIABILIDAD O POR ALGUNA OTRA RAZÓN.

COMMIT_TRANSACTION (confirmar_transacción):.

 SEÑALA QUE:

• LA TRANSACCIÓN TERMINÓ CON ÉXITO.

(27)

TRANSACCIONES

ROLLBACK (restaurar) O ABORT (abortar):

 INDICAN QUE:

• LA TRANSACCIÓN TERMINÓ SIN ÉXITO.

(28)

BD RELACIONALES Y ACTIVAS 28

TRANSACCIONES

PROPIEDADES DESEABLES DE LAS TRANSACCIONES

SON LAS PROPIEDADES ACID (INICIALES EN INGLÉS):ATOMICIDAD:

UNA TRANSACCIÓN ES UNA UNIDAD ATÓMICA

(INDIVISIBLE) DE PROCESAMIENTO.  CONSERVACIÓN DE LA CONSISTENCIA:

 SE CONSERVA LA CONSISTENCIA SI LA EJECUCIÓN

COMPLETA DE LA TRANSACCIÓN LLEVA LA BD DE UN ESTADO CONSISTENTE A OTRO TAMBIÉN CONSISTENTE.  AISLAMIENTO:

LA EJECUCIÓN DE UNA TRANSACCIÓN NO DEBERÍA

INTERFERIR CON OTRAS TRANSACCIONES QUE SE EJECUTEN CONCURRENTEMENTE.

DURABILIDAD O PERMANENCIA:

 LOS CAMBIOS APLICADOS A LA BD POR UNA

(29)
(30)

BD RELACIONALES Y ACTIVAS 30

BASES DE DATOS ACTIVAS

(31)

BASES DE DATOS ACTIVAS

CONCEPTOS

 LAS BD CONVENCIONALES SE CONSIDERAN MUERTAS O

PASIVAS:

 NO PUEDEN MANEJAR CIERTAS SITUACIONES.

EJ.: ACTUALIZAR LAS RUTAS DE UN AUTOBÚS ESCOLAR CON

CADA INCORPORACIÓN DE NUEVOS ALUMNOS A LA

ESCUELA:

 SUPERVISAR CADA MATRÍCULA NUEVA.

 COMPROBAR PERIÓDICAMENTE LAS DIRECCIONES DE LOS

ALUMNOS MATRICULADOS.

SON NECESARIAS LAS BD ACTIVAS:

INCORPORAN COMPORTAMIENTO ACTIVO:

(32)

BD RELACIONALES Y ACTIVAS 32

BASES DE DATOS ACTIVAS

CONCEPTOS

EJ. DE COMPORTAMIENTO ACTIVO:  GESTIÓN DE STOCKS:

 CUANDO ITEM < 10 ENTONCES SOLICITAR NUEVO ITEM AL

PROVEEDOR.

 PRODUCTOS PERECEDEROS:

 CUANDO PRODUCTO.CADUCA - FECHA_ACTUAL < 7

ENTONCES REDUCIR EL PRECIO DEL PRODUCTO.  GESTIÓN DE AUTOBUSES:

CUANDO AUTOBÚS LLENO Y FALTE MÁS DE UNA SEMANA

(33)
(34)

BD RELACIONALES Y ACTIVAS 34

GESTOR PASIVO VS. ACTIVO

VENTAJAS

(35)

GESTOR PASIVO VS. ACTIVO

VENTAJAS

(36)

BD RELACIONALES Y ACTIVAS 36

GESTOR PASIVO VS. ACTIVO

VENTAJAS

(37)

GESTOR PASIVO VS. ACTIVO

VENTAJAS

MANIFIESTO DE LAS BASES DE DATOS ACTIVAS (1996):CARACTERÍSTICAS DE UN SGBD ACTIVO:

 TIENE UN MODELO DE REGLAS ECA.

 SOPORTA LA GESTIÓN DE REGLAS Y LA EVOLUCIÓN DE LA

BASE DE DATOS.

CARACTERÍSTICAS DE EJECUCIÓN DE REGLAS ECA:

 EL SGBD TIENE UN MODELO DE EJECUCIÓN.

 OFRECE DIFERENTES MODELOS DE ACOPLAMIENTO.  IMPLEMENTA MODOS DE CONSUMO.

 GESTIONA LA HISTORIA DE EVENTOS.

 IMPLEMENTA LA RESOLUCIÓN DE CONFLICTOS.

CARACTERÍSTICAS DE APLICACIÓN Y USABILIDAD:

(38)

BD RELACIONALES Y ACTIVAS 38

GESTOR PASIVO VS. ACTIVO

(39)

GESTOR PASIVO VS. ACTIVO

VENTAJAS

MODELO DE CONOCIMIENTO:

 DESCRIBE LA SITUACIÓN Y LA REACCIÓN CORRESPONDIENTE (REGLAS ECA).

MODELO DE EJECUCIÓN:

(40)

BD RELACIONALES Y ACTIVAS 40

GESTOR PASIVO VS. ACTIVO

VENTAJAS

SQL Y LAS BD ACTIVAS

CONSTRAINTS:

 ESPECIFICACIONES DEL DDL QUE SE APLICAN A COLUMNAS O TABLAS.

 CONVIENE DARLES NOMBRE.

 PUEDEN USAR UNIQUE, NOT NULL, REFERENCES, CHECK.

ASERCIONES (ASSERTIONS):

 RESTRICCIÓN QUE NO TIENE POR QUÉ ESTAR ASOCIADA A UNA ÚNICA TABLA.

TRIGGERS (DISPARADORES):

(41)

GESTOR PASIVO VS. ACTIVO

VENTAJAS

VENTAJAS:  MAYOR PRODUCTIVIDAD.  MEJOR MANTENIMIENTO.  REUTILIZACIÓN DE CÓDIGO.

(42)

BD RELACIONALES Y ACTIVAS 42

APLICACIONES DE LOS SGBD

(43)

APLICACIONES DE LOS SGBD

ACTIVOS

INTERNAS:

 CLÁSICAS DE LA UTILIZACIÓN O ADMINISTRACIÓN DE BD.  CONTROL DE INTEGRIDAD (ON UPDATE CASCADE).

 MANTENIMIENTO DE DATOS DERIVADOS (VISTAS).

 ADMINISTRACIÓN DE COPIAS (MONITORIZAR Y REGISTRAR CAMBIOS).

 SEGURIDAD Y AUDITORÍA.  GESTIÓN DE VERSIONES.

EXTERNAS:

(44)

BD RELACIONALES Y ACTIVAS 44

APLICACIONES DE LOS SGBD

ACTIVOS

NOTIFICACIÓN CUANDO OCURREN CIERTAS CONDICIONES.

REFORZAR LAS RESTRICCIONES DE INTEGRIDAD:

 LOS DISPARADORES SON MÁS INTELIGENTES Y MÁS POTENTES QUE LAS RESTRICCIONES.

MANTENIMIENTO DE DATOS DERIVADOS:

 ACTUALIZACIÓN AUTOMÁTICA DE DATOS DERIVADOS EVITANDO ANOMALÍAS DEBIDAS A LA REDUNDANCIA:

 EJEMPLO: UN DISPARADOR ACTUALIZA EL SALDO TOTAL

(45)

APLICACIONES DE LOS SGBD

ACTIVOS

MODELO DEL CONOCIMIENTO:DEFINIR QUÉ Y CUÁNDO.

REGLAS ECA → EVENTO – CONDICIÓN – ACCIÓN:EVENTO: QUÉ DISPARA LA ACCIÓN.

(46)

BD RELACIONALES Y ACTIVAS 46

APLICACIONES DE LOS SGBD

ACTIVOS

EVENTO

FUENTE: ¿QUÉ OCASIONA LA OCURRENCIA DE UN EVENTO?:  UNA INSTRUCCIÓN DEL LMD (ANTES O DESPUÉS):

 INSERT, DELETE, UPDATE, SELECT.

 UNA INSTRUCCIÓN PARA LA GESTIÓN DE TRANSACCIONES:

 COMMIT, ABORT.

 UNA EXCEPCIÓN:

VIOLACIÓN DE AUTORIZACIONES, BLOQUEOS, ETC.

 EL RELOJ:

 EL 28 DE MAYO A LAS 19:30H.

(47)

APLICACIONES DE LOS SGBD

ACTIVOS

GRANULARIDAD: ¿QUÉ CAMBIOS CONSIDERA UNA OCURRENCIA DEL EVENTO?:

CAMBIOS EN SÓLO UNA TUPLA (DISPARADORES A NIVEL DE FILA):

 1 TUPLA : 1 EVENTO.

CAMBIOS EN TODAS LAS TUPLAS (DISPARADORES A NIVEL DE SENTENCIA):

(48)

BD RELACIONALES Y ACTIVAS 48

APLICACIONES DE LOS SGBD

ACTIVOS

CONDICIÓN Y ACCIÓN

CONDICIÓN:

 UN PREDICADO SOBRE LA BD: CONSULTA.

 PUEDE SER OPCIONAL (SI NO SE INCLUYE SE CONSIDERA QUE LA CONDICIÓN ES SIEMPRE CIERTA).

ACCIÓN:

 ¿QUÉ SE PUEDE INCLUIR EN LA REACCIÓN?.

 OPERACIÓN EN LA BD (ÓRDENES DE SQL, INSERT, DELETE, …).  COMANDOS DE SQL EXTENDIDO (EJ.: PL/SQL).

 LLAMADAS EXTERNAS (ENVÍO DE MENSAJES).  ABORTAR LA TRANSACCIÓN.

(49)

APLICACIONES DE LOS SGBD

ACTIVOS

(50)

BD RELACIONALES Y ACTIVAS 50

APLICACIONES DE LOS SGBD

ACTIVOS

(51)

APLICACIONES DE LOS SGBD

ACTIVOS

EJECUCIÓN

 EN GENERAL, LA FORMA EN QUE SE EJECUTAN DICHAS FASES DEPENDE DE DOS MODOS DE ACOPLAMIENTO:

(52)

BD RELACIONALES Y ACTIVAS 52

APLICACIONES DE LOS SGBD

ACTIVOS

PARA AMBOS MODOS LAS OPCIONES SON:INMEDIATO (INMEDIATE):

 LA CONDICIÓN SE EVALÚA INMEDIATAMENTE DESPUÉS

DEL EVENTO.

LA ACCIÓN SE EJECUTA INMEDIATAMENTE DESPUÉS DE

LA CONDICIÓN.

DIFERIDO (DEFERRED):

 LA CONDICIÓN SE EVALÚA AL FINAL DE LA

TRANSACCIÓN.

 LA ACCIÓN SE EJECUTA AL FINAL DE LA TRANSACCIÓN.

DESPRENDIDO (DETACHED):

 LA CONDICIÓN SE EVALÚA EN UNA TRANSACCIÓN

DIFERENTE.

 LA ACCIÓN SE EJECUTA EN UNA TRANSACCIÓN

(53)

APLICACIONES DE LOS SGBD

ACTIVOS

(54)

BD RELACIONALES Y ACTIVAS 54

APLICACIONES DE LOS SGBD

ACTIVOS

(55)

APLICACIONES DE LOS SGBD

ACTIVOS

(56)
(57)

REGLAS EN BD RELACIONALES

DISPARADOR (TRIGGER)

 ESTÁ ASOCIADO A UNA ÚNICA TABLA BASE.

 ES EL CONCEPTO CLAVE PARA IMPLEMENTAR BD ACTIVAS.

 TIENE TRES PARTES:

UN EVENTO: INDICA LA ACCIÓN SOBRE LA TABLA BASE QUE CAUSARÁ QUE SE ACTIVE EL DISPARADOR:

 INSERT, DELETE, O UPDATE.

UN TIEMPO DE ACCIÓN: INDICA CUÁNDO SE ACTIVARÁ EL DISPARO:

BEFORE => ANTES DEL EVENTO.  AFTER => DESPUÉS DEL EVENTO.

(58)

BD RELACIONALES Y ACTIVAS 58

REGLAS EN BD RELACIONALES

(59)

REGLAS EN BD RELACIONALES

(60)

BD RELACIONALES Y ACTIVAS 60

LAS REGLAS DE CODD PARA SGBD

(61)

LAS REGLAS DE CODD PARA SGBD

RELACIONALES

REGLA 0: REGLA BÁSICA

CUALQUIER SISTEMA QUE SE ANUNCIE COMO SISTEMA GESTOR DE BD RELACIONALES, SGBDR, DEBE SER CAPAZ DE GESTIONAR POR COMPLETO LAS BD UTILIZANDO SUS CAPACIDADES RELACIONALES.

 UN SGBDR NO DEBE RECURRIR A OPERACIONES NO

RELACIONALES PARA COMPLETAR SUS CAPACIDADES DE

(62)

BD RELACIONALES Y ACTIVAS 62

LAS REGLAS DE CODD PARA SGBD

RELACIONALES

REGLA 1: REPRESENTACIÓN DE LA INFORMACIÓN

TODA INFORMACIÓN ALMACENADA EN UNA BD RELACIONAL DEBE SER REPRESENTADA DE FORMA EXPLÍCITA Y ÚNICA A NIVEL LÓGICO, POR MEDIO DE VALORES EN TABLAS.

 TODA LA INFORMACIÓN DE LAS BD DEBE ESTAR ALMACENADA EN FORMA DE RELACIONES:

 SE REFIERE AL NIVEL LÓGICO.

 LA INFORMACIÓN NECESARIA PARA EL FUNCIONAMIENTO DE LA BD SE REPRESENTA MEDIANTE TABLAS:

(63)

LAS REGLAS DE CODD PARA SGBD

RELACIONALES

REGLA 2: ACCESO GARANTIZADO

TODO DATO (VALOR ATÓMICO) DEBE SER ACCESIBLE MEDIANTE LA COMBINACIÓN DE UN NOMBRE DE TABLA, UN VALOR DE SU CLAVE Y EL NOMBRE DE UNA COLUMNA.

 LOS DATOS NO SE REFERENCIAN POR SU POSICIÓN FÍSICA.

 SE HACE ESPECIAL HINCAPIÉ EN LA IMPORTANCIA DE LAS CLAVES PRIMARIAS (O DE LAS CLAVES CANDIDATAS EN GENERAL).

REGLA 3: TRATAMIENTO SISTEMÁTICO DE VALORES NULOS

SE OFRECE EL VALOR NULO PARA DAR SOPORTE A LA REPRESENTACIÓN DE INFORMACIÓN DESCONOCIDA O

INAPLICABLE DE FORMA SISTEMÁTICA,

INDEPENDIENTEMENTE DEL TIPO DE DATO.

(64)

BD RELACIONALES Y ACTIVAS 64

LAS REGLAS DE CODD PARA SGBD

RELACIONALES

REGLA 4: CATÁLOGO DINÁMICO EN LÍNEA BASADO EN EL MODELO RELACIONAL

LA DESCRIPCIÓN DE LA BD SE DEBE REPRESENTAR EN EL NIVEL LÓGICO DE LA MISMA MANERA QUE LOS DATOS ORDINARIOS, DE FORMA QUE LOS USUARIOS AUTORIZADOS PUEDAN CONSULTARLA UTILIZANDO EL MISMO LENGUAJE RELACIONAL QUE USAN PARA ACCEDER A LOS DATOS NORMALES.

 UNA BD RELACIONAL DEBE SER AUTODESCRIPTIVA.

 EL MODELO DE DATOS PARA LOS METADATOS DEBE SER

(65)

LAS REGLAS DE CODD PARA SGBD

RELACIONALES

REGLA 5: SUBLENGUAJE DE DATOS COMPLETO

EL SISTEMA RELACIONAL DEBE INCLUIR, AL MENOS, UN LENGUAJE QUE PERMITA EXPRESAR LOS SIGUIENTES ELEMENTOS: DEFINICIÓN DE DATOS, DEFINICIÓN DE VISTAS, MANIPULACIÓN DE DATOS (INTERACTIVA Y PROGRAMADA), RESTRICCIONES DE INTEGRIDAD, AUTORIZACIONES Y CONTROL DE TRANSACCIONES.

 EL LENGUAJE SQL APORTA TODAS ESTAS FUNCIONES.

REGLA 6: ACTUALIZACIÓN DE VISTAS

TODA VISTA TEÓRICAMENTE ACTUALIZABLE DEBE PODER ACTUALIZARSE EN EL SISTEMA.

 LAS VISTAS SE PRESENTAN AL USUARIO COMO TABLAS

VIRTUALES.

(66)

BD RELACIONALES Y ACTIVAS 66

LAS REGLAS DE CODD PARA SGBD

RELACIONALES

REGLA 7: INSERCIÓN, MODIFICACIÓN Y ELIMINACIÓN DE ALTO NIVEL

LA CAPACIDAD DE MANEJAR UNA RELACIÓN O UNA VISTA COMO OPERANDO ÚNICO DEBE EXISTIR, NO SÓLO AL RECUPERAR LA INFORMACIÓN, SINO TAMBIÉN EN LA INSERCIÓN, LA ACTUALIZACIÓN Y EL BORRADO DE DATOS.

 TODAS LAS OPERACIONES DE MANIPULACIÓN DE DATOS DEBEN OPERAR SOBRE CONJUNTOS DE FILAS.

REGLA 8: INDEPENDENCIA FÍSICA DE LOS DATOS

LOS PROGRAMAS DE APLICACIÓN Y LAS ACTIVIDADES TERMINALES DE LA BD DEBEN MANTENERSE INALTERADOS DESDE EL PUNTO DE VISTA LÓGICO, SEAN CUALES SEAN LOS CAMBIOS QUE SE INTRODUZCAN EN LOS MECANISMOS DE ALMACENAMIENTO Y ACCESO DE LA BD.

(67)

LAS REGLAS DE CODD PARA SGBD

RELACIONALES

REGLA 9: INDEPENDENCIA LÓGICA DE LOS DATOS

LOS PROGRAMAS DE APLICACIÓN Y LAS ACTIVIDADES TERMINALES DE LA BD NO DEBEN VERSE AFECTADAS POR AQUELLOS CAMBIOS QUE PRESERVEN LA INFORMACIÓN Y QUE, DESDE EL PUNTO DE VISTA TEÓRICO, ESTÉN PERMITIDOS.

 NO HABRÁ QUE MODIFICAR LOS PROGRAMAS DE APLICACIÓN AUNQUE SE REALICEN CAMBIOS SOBRE LAS TABLAS, SIEMPRE QUE ESOS CAMBIOS MANTENGAN LA INFORMACIÓN QUE EN ELLAS HUBIESE.

REGLA 10: INDEPENDENCIA DE LA INTEGRIDAD

(68)

BD RELACIONALES Y ACTIVAS 68

LAS REGLAS DE CODD PARA SGBD

RELACIONALES

REGLA 11: INDEPENDENCIA DE LA DISTRIBUCIÓN

DEBE EXISTIR UN SUBLENGUAJE DE DATOS QUE PUEDA SOPORTAR BD DISTRIBUIDAS SIN QUE HAYA QUE ALTERAR LOS PROGRAMAS DE APLICACIÓN CUANDO SE DISTRIBUYEN LOS DATOS POR PRIMERA VEZ O SE REDISTRIBUYEN ESTOS CON POSTERIORIDAD.

 SE DEBE PRESENTAR LOS DATOS AL USUARIO FINAL COMO SI ESTOS ESTUVIERAN CENTRALIZADOS EN UNA MÁQUINA.

(69)

LAS REGLAS DE CODD PARA SGBD

RELACIONALES

REGLA 12: REGLA DE LA NO SUBVERSIÓN

SI UN SGBD SOPORTA UN LENGUAJE DE BAJO NIVEL QUE PERMITE EL ACCESO FILA A FILA, ÉSTE NO PUEDE UTILIZARSE PARA SALTARSE LAS REGLAS DE INTEGRIDAD Y LAS RESTRICCIONES EXPRESADAS POR MEDIO DEL LENGUAJE DE MÁS ALTO NIVEL.

(70)

BD RELACIONALES Y ACTIVAS 70

LAS REGLAS DE CODD PARA SGBD

RELACIONALES

(71)
(72)

BD RELACIONALES Y ACTIVAS 72

LIMITACIONES DEL MODELO

RELACIONAL

 EL MODELO RELACIONAL TIENE DIFICULTADES EN

APLICACIONES QUE MANEJAN GRAN VARIEDAD DE TIPOS DE DATOS DE CIERTA COMPLEJIDAD, POR EJ.:

 TEXTOS EN APLICACIONES DE GENERACIÓN DE

PUBLICACIONES.

 IMÁGENES EN APLICACIONES QUE ANALIZAN INFORMACIÓN VISUAL (EJ.: PREDICCIONES METEOROLÓGICAS).

 DATOS COMPLEJOS NO CONVENCIONALES EN APLICACIONES DE DISEÑO (EJ.: CAD/CAM).

(73)

LIMITACIONES DEL MODELO

RELACIONAL

ALGUNAS DE LAS LIMITACIONES DEL MODELO RELACIONAL SON:

OBJETOS COMPLETOS: POBRE FORMA DE REPRESENTACIÓN DE OBJETOS COMPLEJOS DEBIDO A:

 PRIMERA FORMA NORMAL – USO EXCLUSIVO DE VALORES

ATÓMICOS EN LOS ATRIBUTOS DE LAS RELACIONES.

 FALTA DE RELACIONES ANIDADAS.

ESTRUCTURACIÓN: NO OFRECE UN SOPORTE ADECUADO CUANDO EN EL ESQUEMA APARECEN:

ESTRUCTURAS RECURSIVAS O ANIDADAS.

 COLECCIONES DE DATOS QUE CORRESPONDIENDO AL

MISMO TIPO DE ENTIDAD TIENEN UN TIPO SIMILAR PERO NO IDÉNTICO.

(74)

BD RELACIONALES Y ACTIVAS 74

LIMITACIONES DEL MODELO

RELACIONAL

CREACIÓN DE TIPOS: LA CAPACIDAD DE CREACIÓN DE TIPOS DE DATOS ESTÁ MUY LIMITADA:

 LA GESTIÓN DE OBJETOS MULTIMEDIA ES MUY PRIMITIVA

(EJ.: OBJETOS GRANDES EN BINARIO: BLOB).

 EL SOPORTE PARA INFORMACIÓN SEMI-ESTRUCTURADA

ES DEFICIENTE (EJ.: TEXTO O PÁGINAS WEB).

 EL USUARIO NO PUEDE DEFINIR SUS PROPIOS TIPOS DE

DATOS.

NO SE PUEDEN CONSTRUIR TIPOS ABSTRACTOS DE DATOS.

ABSTRACCIÓN: EXISTE UN GRAN SALTO CONCEPTUAL ENTRE EL MODELO DE DATOS DE LA BD Y LA GESTIÓN DE DATOS EN LOS PROGRAMAS DE APLICACIÓN.

(75)

LIMITACIONES DEL MODELO

RELACIONAL

COMO ALTERNATIVAS AL MODELO RELACIONAL Y PARA

SUPERAR SUS LIMITACIONES SE HAN DESARROLLADO OTROS MODELOS:

Referencias

Documento similar

Codd en 1970 en su célebre artículo de ACM titulado 'Un modelo de datos relacional para grandes bancos de datos compartidos', constituyó un hito en la historia de las bases

Un sistema de bases de datos proporciona Un sistema de bases de datos proporciona un lenguaje de definición de datos para un lenguaje de definición de datos para

Lenguaje de manipulación de datos: mediante el lenguaje de manipulación de datos o DML (Data Manipulation Language), se pueden introducir nuevos registros en la base de datos,

Manipulación de los datos: • consulta • actualización Gestión y administración de la base de datos Componentes SGBD Lenguajes de manipulación y traductores asociados

Actualmente la opinión sobre las definiciones del modelo objeto relacional están muy dividas, una definición sencilla podría ser: El modelo objeto-relacional ORDBMS es similar a

2014, administracion, base, bases, CLR, Common, Comunicaciones, Creación, curso, Datos, DCL, Definición, diseño, Disparadores, Gestión, implementación, instalación, Language,

ƒ A diferencia de una base de datos de Microsoft Access, un proyecto de Access no contiene datos ni objetos basados en definición de datos: tablas, vistas, diagramas de base de

Por ello, con el presente curso se trata de aportar los conocimientos necesarios para conocer el diseño de bases de datos relacionales, conocer la definición