Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
ESQUEMAS Y
EJEMPLARES
OBJETIVOS
En el diseo, gestin y utilizacin de Bases de Datos, como en
cualquier otra actividad cientfica o tecnolgica, es
fundamentalmente trabajar con conceptos basados en un cierto
modelo terico o conceptual.
En este tema se presentan los principales conceptos de modelos de
datos:
esquemas, objetos, propiedades, asociaciones, operaciones, restricciones, etc.
Dos acepciones:
Reproduccin simplificada de la realidad (ciencias
empricas)
Realidad propiamente dicha (pintor)
MODELO DE DATOS
Dispositivo de abstraccin que nos permite ver el bosque (esto es, la
informacin contenida en los datos) en oposicin a los rboles (valores
individuales de los datos);
Tsichritzis y Lochovsky (1982).
Conjunto de herramientas conceptuales para describir la representacin
de la informacin en trminos de datos. Los modelos de datos
comprenden aspectos relacionados con: estructuras y tipos de datos,
operaciones y restricciones;
Dittrich (1994)
Conjunto de conceptos, reglas y convenciones que permiten describir y
manipular los datos de la parcela de un cierto mundo real que deseamos
almacenar en la base de datos;
de Miguel, Piattini y Marcos (1999).
MODELO DE DATOS VS
LENGUAJE DE DATOS
L D = M D + Sintaxis
Ejem p los:
SQ L = M D R + Sintaxis
Q B E = M D R + Sintaxis (distinta)
O Q L = M O + Sintaxis
DIFERENCIA ENTRE MODELO
Y ESQUEMA EN BASES DE
DATOS
MUNDO
REAL
ESTRUCTUR
A DE DATOS
(ESQUEMA)
ESQUEMA VS EJEMPLAR.
Tambin es preciso distinguir entre esquema y ejemplar.
CONCEPTUALES O SEMNTICOS
Enfocados a describir el mundo real con independencia de la
mquina
Entidad/Relacin
(E/R)
Objetos (UML)
CONVENCIONALES O LGICOS
Orientados a su implementacin en SGBD
Jerrquico
Red (Codasyl)
Relacional
DIFERENCIAS ENTRE MODELOS
CONVENCIONALES Y CONCEPTUALES
CONVENCIONALES CONCEPTUALES
Ejemplo:
Clasificamos como Vehculos a las mquinas, animales o cosas,
con medios de propulsin propios, que sirven para desplazar
seres u objetos desde una posicin a otra.
Ambulancia - SI es un vehculo
patin - NO es un vehculo (incumple la propiedad de
autopropulsin).
CLASIFICACIN
La clasificacin se corresponde con el concepto de pertenencia a un conjunto (es
miembro de):
entre el elemento clase y los elementos miembros se establece una relacin
ES_MIEMBRO_DE.
Los ejemplares de una clase tienen caractersticas similares, por medio de las cuales
describimos la correspondiente clase; estas caractersticas toman valores concretos para
cada uno de los ejemplares que pertenecen a la clase.
Los mismos objetos admiten clasificaciones distintas.
Por ejemplo, podemos clasificar las asignaturas de varias maneras:
obligatorias / optativas,
anuales / semestrales,
de primer curso, segundo curso, etc,
tericas / aplicadas, etc.
Todos los modelos de datos de las bases de datos admiten la abstraccin de clasificacin.
AGREGACIN
La abstraccin de Agregacin consiste en construir un nuevo elemento del
modelo como compuesto de otros elementos (componentes):
Se establece una relacin ES_PARTE_DE entre los elementos componentes y el elemento
compuesto.
Elementos permitidos
Objetos
Asociaciones
Caractersticas de los objetos
Dominios
Elementos no permitidos e restricciones
Inherentes
De integridad o semnticas
Y
<condicin> representa una expresin lgica que deben cumplir los objetos que se desea localizar o
seala el camino que permite llegar a esos objetos; y
<objetivo> indica los objetos (o las propiedades de stos) sobre los que se aplica la accin.
RESTRICCIONES DE
INTEGRIDAD
RESTRICCIONES DE
INTEGRIDAD
En una restriccin de integridad es posible distinguir los siguientes
componentes:
La operacin de actualizacin (insercin, borrado o modificacin) cuya ejecucin ha de dar
lugar a la comprobacin del cumplimiento de la restriccin.
La condicin que debe cumplirse, la cual es en general una proposicin lgica, definida sobre uno o
varios elementos del esquema, que puede tomar uno de los valores de verdad (cierto o falso).
La accin que debe llevarse a cabo dependiendo del resultado de evaluar la condicin.
Las restricciones de integridad se pueden considerar, en cierto modo, como reglas ECA
(Evento, Condicin, Accin):
al ocurrir un evento (en este caso una actualizacin), se comprueba una condicin y dependiendo de su
resultado se pone en marcha una accin (rechazar la operacin, informar al usuario, corregir el error,
etc.).
Adems de estos elementos, tambin pueden tener un nombre, por medio del cual es
posible identificarlas, y tambin puede indicarse el momento en el que ha de
evaluarse la condicin.
CLASIFICACIN DE LAS
RESTRICCIONES
CLASIFICACIN DE LAS
RESTRICCIONES
Las restricciones propias se especifican al definir el esquema mediante las
facilidades que proporciona la funcin de definicin de datos, almacenndose en
la base de datos (no en los programas), por lo que no pueden ser violadas por
ninguna aplicacin, es decir, cualquier actualizacin est obligada a
respetarlas.
Dependiendo de que sea o no preciso definir la accin tendremos
restricciones propias de dos tipos:
De accin general: es preciso programar un procedimiento (en cualquier lenguaje) que
determine la accin que hay que llevar a cabo. Se subdividen en:
Procedimientos almacenados: se definen totalmente de forma procedimental (tanto la accin como la condicin).
Restricciones de disparo: se definen mediante disparadores (triggers). En ellas se formula una condicin de forma
declarativa, mediante una proposicin lgica; el cumplimiento de la misma "dispara" una accin especificada de forma
procedimental.
De accin especfica: la accin (en general rechazo, aunque puede ser otra, bien
predeterminada bien elegida mediante opciones) est implcita en la misma restriccin.
CLASIFICACIN DE LAS
RESTRICCIONES
Dentro de las restricciones de accin especfica es preciso distinguir
especifican las siguientes clases:
De condicin general: la condicin se define mediante una proposicin lgica. La operacin
ser una actualizacin. No se declara la accin porque este tipo de restriccin lleva siempre
asociado el rechazo de la operacin cuando no se cumple la condicin, es decir, el
sistema evala la condicin y si el resultado es cierto se actualiza y si no es cierto no se lleva
a cabo la operacin. En SQL 92 se incluyen dos tipos de restricciones que son de condicin
general:
De verificacin: La expresin lgica mediante la cual se formula la condicin est definida sobre uno o varios
atributos de un mismo elemento. Por ejemplo, una clasula "CHECK dentro de un CREATE TABLE.
De asercin: son anlogas a las anteriores pero pueden estar referidas a ms de un elemento del esquema ya que
tienen existencia por s mismas (por tanto tienen un nombre). Ejemplo: CREATE ASSERTION ..
De condicin especfica: tambin llamadas de "caso especial" "implcitas. Se refiere a las
diversas opciones que facilitan los distintos MD cuando se definen los elementos de su
esquema y que en realidad son restricciones. Por ejemplo, en el modelo Relacional: PRIMARY
KEY, FOREIGN KEY, NOT NULL ...
CLASIFICACIN DE LAS
RESTRICCIONES
Otros criterios de clasificacin:
Segn la dimensin temporal:
De Estado o Estticas: las restricciones se aplican a un determinado estado de una BD y no hay
necesidad de conocer los estados anteriores para saber si se cumple o no la condicin. Ejemplo:
edad>=0.
De Transicin o Dinmicas: la restriccin hay que aplicarla a la transicin entre dos estados. Ejemplo: el
salario de un empleado no puede disminuir.
Segn el mbito o alcance:
Afectan a un nico ejemplar de un tipo dado: edad > 14.
Afectan a varios ejemplares de un tipo dado. A su vez, pueden afectar slo a algunos o a todos los
ejemplares de un cierto tipo.
Segn los criterios de comparacin:
De valor: en la condicin se comparan los valores que pueden tomar las propiedades; o
Estructurales: imponen limitaciones a la estructura de los elementos del modelo.
Por ejemplo, que un atributo no puede tomar ms que un valor.
CLASIFICACIN DE LAS
RESTRICCIONES
Otros criterios de clasificacin:
Segn la dimensin temporal:
De Estado o Estticas: las restricciones se aplican a un determinado estado de una BD y no hay
necesidad de conocer los estados anteriores para saber si se cumple o no la condicin. Ejemplo:
edad>=0.
De Transicin o Dinmicas: la restriccin hay que aplicarla a la transicin entre dos estados. Ejemplo: el
salario de un empleado no puede disminuir.
Segn el mbito o alcance:
Afectan a un nico ejemplar de un tipo dado: edad > 14.
Afectan a varios ejemplares de un tipo dado. A su vez, pueden afectar slo a algunos o a todos los
ejemplares de un cierto tipo.
Segn los criterios de comparacin:
De valor: en la condicin se comparan los valores que pueden tomar las propiedades; o
Estructurales: imponen limitaciones a la estructura de los elementos del modelo.
Por ejemplo, que un atributo no puede tomar ms que un valor.