Sunteți pe pagina 1din 26

BASES DE DATOS

Tema 1

Modelos de Datos UCLM- E.S. de Informtica


Coral Calero, Marcela Genero, Francisco Ruiz

Objetivos

Dar a conocer los elementos que forman parte de un

modelo de datos (MD). Distinguir los principales mecanismos de abstraccin. Analizar los distintos tipos de restricciones en un MD. Presentar una clasificacin de los MD ms utilizados.

UCLM-ESI-BDa

1.2

Contenido

Conceptos Bsicos
Modelo, esquema y ejemplar

Restricciones de integridad
Componentes de una restriccin Clases de restricciones

Definicin de modelo de datos


Esttica Dinmica

Principales mecanismos de abstraccin


Clasificacin. Agregacin. Generalizacin. Asociacin. Jerarquas de abstracciones

Taxonoma de los modelos de datos Los modelo de datos en el proceso de diseo de una BD

UCLM-ESI-BDa

1.3

Bibliografa

Bsica
De Miguel et al. (1999)

Complementaria
Tsichritzis y Lochovsky (1982)
Caps. 1-3

Cap. 1

De Miguel y Piattini (1999)


Cap. 3

UCLM-ESI-BDa

1.4

Conceptos Bsicos

Modelo

Construccin mental a partir de la realidad en la que se

reproducen los principales componentes y relaciones del segmento de la realidad analizada.


Dos acepciones: Reproduccin simplificada de la realidad (ciencias empricas) Realidad propiamente dicha (pintor)

UCLM-ESI-BDa

1.5

Conceptos Bsicos

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 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; permiten describir y manipular los datos de la parcela de un cierto mundo real que deseamos almacenar en la base de datos; De Miguel et al. (1999).
1.6

Lochovsky (1982). Conjunto de herramientas conceptuales para describir

Dittrich (1994). Conjunto de conceptos, reglas y convenciones que

UCLM-ESI-BDa

Conceptos Bsicos

Modelo de Datos vs Lenguaje de Datos

LD = MD + Sintaxis
Ejemplos:
SQL = MDR + Sintaxis QBE = MDR + Sintaxis (distinta) OQL = MO + Sintaxis

UCLM-ESI-BDa

1.7

Conceptos Bsicos

Esquema

"La descripcin especfica de un determinado mini-mundo

en trminos de un modelo de datos se denomina esquema (o esquema de datos) del mini-mundo. La coleccin de datos que representan la informacin a cerca del mini-mundo constituye la base de datos, Dittrich (1994).
Representacin de un determinado mundo real (universo del discurso) en trminos de un modelo de datos; de Miguel, Piattini y Marcos (1999).

UCLM-ESI-BDa

1.8

Conceptos Bsicos

Modelo de Datos vs Esquema


MUNDO MUNDO REAL REAL
La descripcin de un cierto mundo real por medio de un modelo de datos da como resultado un esquema

MODELO MODELO DE DE DATOS DATOS

ESTRUCTURA ESTRUCTURA DE DATOS DE DATOS (ESQUEMA) (ESQUEMA)

UCLM-ESI-BDa

1.9

Conceptos Bsicos

Modelo de Datos vs Esquema


MUNDO MUNDO REAL REAL
La descripcin de un cierto mundo real por medio de un modelo de datos da como resultado un esquema

MODELO MODELO DE DE DATOS Herramienta DATOS Intelectual

ESTRUCTURA ESTRUCTURA DE DATOS DE DATOS (ESQUEMA) Construccin o (ESQUEMA) Construcci Resultado


UCLM-ESI-BDa 1.10

Conceptos Bsicos

Esquemas y Ejemplares

Un ejemplar de un elemento de un esquema son los datos que en un determinado momento se encuentran almacenados en el citado elemento del esquema. La coleccin de ejemplares de todos los elementos de un esquema en un momento determinado constituyen un ejemplar del esquema. Al igual que en los lenguajes de programacin existen variables (constituidas por un tipo y un contenido), las cuales tienen en un momento determinado un cierto valor; en las bases de datos se debera hablar de variables de base de datos, cuyo tipo sera el esquema y su contenido todos los posibles valores del esquema; su valor, en un momento determinado, sera un ejemplar del esquema. Nosotros utilizaremos la expresin base de datos en el sentido abstracto de todos los posibles ejemplares, y cuando queramos referirnos a su contenido en un cierto momento hablaremos de un ejemplar o bien de la base de datos en el instante i (BDi).

UCLM-ESI-BDa

1.11

Conceptos Bsicos

Tipos de Esquemas
NIVEL EXTERNO NIVEL GLOBAL NIVEL INTERNO

EE1

EI1

EE2 EG EIx

EEn
CORRESPONDENCIA EE EG

EIm
CORRESPONDENCIA EG EI

Esquemas para los tres niveles de la arquitectura ANSI


UCLM-ESI-BDa 1.12

Conceptos Bsicos

Ejemplos de Esquemas
a) ESQ U EM A G LO B A L
CURSO DE DOCTORADO / * T ip o d e O b j e to * / CURSO C O D IG O NOM BRE N U M _H O RAS D E S C R IP C IO N

b ) E S Q U E M A IN T E R N O
CURSOS DE DOCTORADO / * R e g i s t r o A lm a c e n a d o * / CURSO C O D _ C U R S O B y te (3 ) NOM BRE B y te (5 0 ) N U M _ H O R A S B y te (2 ) D E S C R IP C IO N B y te (2 0 0 ) n d ic e d e 2 n iv e le s s o b re CO D _CU RSO PRO FESO R CO D _PROFE B y te NOM BRE B y te DNI B y te D IR E C C IO N B y te S A L A R IO B y te In d ic e 1 n iv e l CO D _PROFE IM P A R T E F E C H A _ IN I F E C H A _ F IN B y te (8 ) B y te (8 )

c) E S Q U E M A S E X T E R N O S

EN ORACLE FORM S
( li s t a d o d e c u r s o s )

C a r a c te r ( 5 ) C a r a c te r ( 5 0 ) N u m ric o (3 ) C a r c te r v a ria b le (2 0 0 ) C la v e C O D I G O

C O D IG O NOM BRE HORAS D E S C R IP C IO N

V a r c h a r 2 (5 ) V a r c h a r 2 (5 0 ) N u m b e r ( 3 ,0 ) V a r c h a r 2 (2 0 0 )

PROFESOR C O D IG O NOM BRE DNI D IR E C C IO N S A L A R IO

C a ra c te r (3 ) C a ra c te r (3 0 ) C a ra c te r (1 0 ) C a ra c te r (5 0 ) N u m ric o (7 )

EN PASCAL (2 ) (3 0 ) (1 0 ) (5 0 ) (4 ) so b re
(a s ig n a c i n c u rs o s a p ro fe s o re s )

C la v e C O D I G O IM P A R T E PR O FESO R CURSO F E C H A IN IC IO F E C H A F IN A L

C a ra c te r (3 ) C a ra c te r (5 ) F ech a F ech a

CURSO NOM BRE HORAS COD _PROFE PRO FESO R IN IC IO F IN

C h ar (5 ) C h ar (3 0 ) In te g e r (1 0 ) C h a r (3 ) C h ar (3 0 ) S trin g (1 0 ) S trin g (1 0 )

C la v e P R O F E S O R , C U R S O
UCLM-ESI-BDa

P U N T E R O _ C U R S O B y te (4 ) P U N T E R O _ P R O F E S O R B y te (4 )
1.13

Conceptos Bsicos

Ejemplos de Ejemplares
EJEMPLARES DE CURSO 00101 Introduccin a las Bases de Datos 030 Este curso tiene como objetivo... 00102 Seguridad de la informacin 020 La seguridad en la informtica... 00203 Diseo de Bases de Datos 100 Dentro de las bases de datos... EJEMPLARES DE PROFESOR 001 Andrs Garca Ruiz 12312330 C/ Conde de Vistahermosa 5.621.333 002 Mercedes Garca Arias 50179030 C/ Rio Mio 3.928.352 003 Julio Lpez Prez 52342876 C/ Segovia 6.564.125 EJEMPLARES DE IMPARTE 00101 001 12/12/1997 20/12/1997 00101 003 01/03/1998 12/03/1998 00203 002 05/11/1997 07/12/1997

UCLM-ESI-BDa

1.14

Conceptos Bsicos

Relacin entre Modelo, Esquema y Ejemplar


Conjunto de reglas para estructurar los datos del mundo real

MODELO 1

MODELO i

MODELO n

Percepcin de una determinada realidad interpretada de acuerdo con un cierto modelo

ESQUEMA 1

ESQUEMA j

ESQUEMA m

Valores que toma la percepcin de una cierta realidad (esquema) en un punto en el tiempo

EJEMPLAR 1

EJEMPLAR r

EJEMPLAR p

UCLM-ESI-BDa

1.15

Definicin de Modelo de Datos

Aunque existen muchos MD es posible abstraer una serie de caractersticas comunes a todos ellos, definiendo as el concepto de modelo de datos en general, de forma ms precisa: un conjunto de conceptos, reglas y convenciones bien definidos que nos permiten aplicar una serie de abstracciones a fin de describir y manipular los datos de un cierto mundo real que deseamos almacenar en una base de datos.

Los MD facilitan la creacin de categoras mediante la aplicacin de mecanismos de abstraccin (clasificacin, agregacin, etc.). Esto lleva a diferenciar dos tipos de modelos (de forma similar a como ocurre con los lenguajes de programacin):
Fuertemente tipados, Dbilmente tipados. (son los utilizados en BD).

UCLM-ESI-BDa

1.16

Definicin de Modelo de Datos

Propiedades

ESTTICAS
Elementos permitidos
Objetos Asociaciones Caractersticas de los objetos Dominios

Elementos no permitidos (restricciones)


Inherentes De integridad o semnticas

DINMICAS
Conjunto de operadores. Cada operador tiene dos componentes:
Localizacin Accin

UCLM-ESI-BDa

1.17

Formalizacin

Definicin de Modelo de Datos

Un MD ha de proporcionar facilidades para recoger los aspectos estticos y dinmicos de la realidad, por lo que se define formalmente como el par:

MD = <G,O>
donde G es el conjunto de reglas de generacin que permiten representar la
componente esttica, es decir, describir las estructuras de nuestro universo del discurso, y O es el conjunto de operaciones autorizadas sobre la correspondiente estructura, operaciones que permiten representar la componente dinmica.

La componente esttica de un determinado MD expresado con una sintaxis determinada es el Lenguaje de Definicin de Datos (LDD), y la componente dinmica el Lenguaje de Manipulacin de Datos (LMD); ambos juntos constituyen el Lenguaje de Datos (LD). Los SGBD suelen tener adems un Lenguaje de Consulta (Query Language -QL-) y un Lenguaje de Control (Control Language).
1.18

UCLM-ESI-BDa

Definicin de Modelo de Datos

Esttica elementos permitidos

Los elementos permitidos no son los mismos para todos los MD (varan especialmente en terminologa), pero en general son:
Objetos (entidades, relaciones, registros, etc.) Asociaciones entre objetos (interrelaciones, set, etc.) Propiedades o caractersticas de los objetos o asociaciones (atributos, campos, elementos de datos, etc.) Dominios, que son conjuntos nominados de valores homogneos sobre los que se definen las propiedades.

A estos elementos permitidos se les podrn aplicar aquellas abstracciones reconocidas por el modelo. La representacin de estos elementos depende de cada modelo de datos, pudiendo hacerse en forma de grafos (E/R, UML) o de tablas (Relacional).

UCLM-ESI-BDa

1.19

Definicin de Modelo de Datos

Esttica elementos no permitidos

Los elementos no permitidos se conocen como restricciones. Tipos:


Restricciones inherentes (del modelo):
Impuestas por la misma naturaleza del modelo de datos, el cual no admite ciertas estructuras.

Restricciones de integridad o semnticas (de usuario):


Permiten captar la semntica del universo del discurso que se quiere modelar y verificar la correccin de los datos almacenados en la BD. Segn los instrumentos que proporcione el modelo de datos para definir y gestionar las restricciones, stas pueden ser:
Propias al MD: su definicin le corresponde al diseador, pero su gestin es responsabilidad del modelo de datos, el cual las reconoce y recoge en el esquema. Ajenas al MD: son, por completo, responsabilidad del diseador, ya que el modelo de datos no las reconoce ni proporciona instrumentos para manejarlas.

UCLM-ESI-BDa

1.20

10

Definicin de Modelo de Datos

Esttica formalizacin

Podemos definir la componente esttica del modelo de datos como:

G = < Ge, Gr >


donde Ge es el conjunto de reglas de generacin de estructuras (objetos del modelo y restricciones inherentes) y Gr es el conjunto de restricciones de usuario.

La aplicacin de la componente esttica de un MD a un determinado Universo del Discurso (UD) nos da como resultado un esquema (E):

G[UD] = E
E es la estructura de datos que describe, en el correspondiente modelo MD, las categoras que han resultado de las abstracciones aplicadas al mundo real (UD) que se trata de modelar.

UCLM-ESI-BDa

1.21

Dinmica formalizacin

La componente dinmica consta de un conjunto de operadores que se definen sobre la estructura del correspondiente MD, ya que no todas las estructuras admiten el mismo tipo de operaciones. La aplicacin de un operador a un ejemplar de un esquema transforma ste en otro ejemplar:

Definicin de Modelo de Datos

O [BDi] = BDj
Tanto BDi como BDj deben ser ejemplares vlidos de la BD, es decir, los valores de ambos deben pertenecer a alguna de las categoras definidas en el esquema y cumplir las restricciones de integridad (tambin deben cumplir, en caso de que existan, las posibles restricciones asociadas al cambio de estado).

UCLM-ESI-BDa

1.22

11

Definicin de Modelo de Datos

Dinmica LMD

En un plano conceptual, sin seguir una sintaxis concreta, podemos expresar una sentencia del LMD de la siguiente forma: LOCALIZACIN <condicin> SELECT DNI, Nombre ACCIN <objetivo>
FROM Alumnos

donde

WHERE Curso=3

La Localizacin o enfoque consiste en localizar un ejemplar de un objeto indicando un camino (lenguaje navegacional) o un conjunto de ejemplares especificando una condicin (lenguaje de especificacin). La Accin se realiza sobre el(los) ejemplar(es) previamente localizado(s). Puede consistir en una recuperacin o en una actualizacin (insercin, borrado o modificacin).

<condicin> es una expresin lgica que deben cumplir los objetos que se desea localizar o seala el camino que permite llegar a esos objetos. <objetivo> indica los objetos (o las propiedades de stos) sobre los que
se aplica la accin.

UCLM-ESI-BDa

1.23

Mecanismos de Abstraccin
El proceso de abstraccin nos ayuda a modelar los datos al hacer que
nos centremos en lo esencial, pasando por alto aspectos que no consideramos relevantes para nuestros objetivos en la representacin del mundo real.
Ejemplo: El concepto de ambulancia como una abstraccin en la que nicamente recogemos aquellas caractersticas (chasis, ruedas, sirena, etc.), comunes a todas las ambulancias y que la distinguen de otros vehculos, que son de inters para nuestros fines.

UCLM-ESI-BDa

1.24

12

Mecanismos de Abstraccin

Los MD ofrecen distintos mecanismos de abstraccin a fin de facilitar la representacin de los datos; siendo el esquema el resultado de aplicar un proceso de abstraccin a un determinado mundo real. Los principales son:
Clasificacin, Agregacin, Generalizacin y Asociacin.
(algunos autores piensan que es un tipo especial de agregacin)

Pueden combinarse entre s ofreciendo interesantes mecanismos semnticos para estructurar los datos. Permiten establecer vinculaciones entre los elementos de un modelo. La clasificacin establece una vinculacin entre una categora de objetos y cada objeto particular (ejemplar) de dicha categora, mientras que en las otras tres el vnculo se establece entre categoras de objetos y, por tanto, tambin entre los correspondientes ejemplares de dichas categoras.
1.25

UCLM-ESI-BDa

Mecanismos de Abstraccin

Uso Cotidiano

Los mecanismos de abstraccin los utilizamos - consciente o inconscientemente - de manera continua:

El vehculo de matrcula CR-0978-Z es de la clase ambulancia. Est formada por cuatro ruedas, un chasis, un motor, ... Una ambulancia es un vehculo para recoger y transportar enfermos. Su propietario es la empresa CUASER; su conductor es Fernndez, ...

UCLM-ESI-BDa

1.26

13

Mecanismos de Abstraccin

Uso Cotidiano

Los mecanismos de abstraccin los utilizamos - consciente o inconscientemente - de manera continua:

Clasificacin: Agregacin:
El vehculo de matrcula CR-0978-Z es de la clase ambulancia. Est formada por cuatro ruedas, un chasis, un motor, ... Una ambulancia es un vehculo para recoger y transportar enfermos. Su propietario es la empresa CUASER; su conductor es Fernndez, ...

Generalizacin: Asociacin:

UCLM-ESI-BDa

1.27

Mecanismos de Abstraccin

Clasificacin

La Clasificacin es la accin de abstraer las caractersticas comunes a un conjunto de ejemplares para crear una categora a la cual pertenecen dichos ejemplares. El mecanismo contrario se llama Particularizacin. BRODIE (1984) define la clasificacin como:
Una forma de abstraccin en la que una coleccin de objetos se considera como una clase de objetos de ms alto nivel. Una clase de objetos es una caracterizacin precisa de todas las propiedades compartidas por todos los objetos en la coleccin. Un objeto es un ejemplar de una clase de objetos si tiene las propiedades definidas en la clase.

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 Gra => NO es un vehculo (incumple la autopropulsin).

UCLM-ESI-BDa

1.28

14

Clasificacin

Mecanismos de Abstraccin

La clasificacin se corresponde con el concepto de pertenencia a un conjunto:


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 de 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 MD de las bases de datos admiten la abstraccin de clasificacin.


1.29

UCLM-ESI-BDa

Mecanismos de Abstraccin

Clasificacin - representacin
Clase
C L A S I F I C A C I O N P A R T I C U L A R I Z A C I O N

Curso

Ejemplar 1

...

Ejemplar n

Curso 1

Curso

. . . . Curso

UCLM-ESI-BDa

1.30

15

Mecanismos de Abstraccin

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.

El mecanismo contrario se llama Desagregacin.


Se pueden considerar tres tipos distintos de agregacin: Agregacin de clases para obtener una clase compuesta,
(incluida en los MD semnticos: ER, UML)

Agregacin de propiedades para obtener una clase, y


(admitida explcita o implcitamente por todos los MD)

Agregacin de propiedades para obtener una propiedad compuesta.


(admitida por algunos MD: Codasyl S, Relacional No)

UCLM-ESI-BDa

1.31

Mecanismos de Abstraccin

Agregacin de clases
DEPARTAMENTO
Agregacin de clases para obtener una clase compuesta

AREA 1 AREA 2 .......... AREA n

DEPARTAMENTO DE INFORMTICA

Ejemplar

L. y S.I.

C.C. e I.A.

UCLM-ESI-BDa

1.32

16

Mecanismos de Abstraccin

Agregacin de propiedades para obtener una propiedad compuesta CURSO


Agregacin de propiedades para obtener una clase

Cod_Curso Nombre Num_horas Descripcin . . .

CURSO 1
Ejemplar

00101 Introduccin a ... 30 Este curso ...


UCLM-ESI-BDa

. . .
1.33

Mecanismos de Abstraccin

Agregacin de propiedades

Fecha

Agregacin de propiedades para obtener una propiedad compuesta

Da

Mes

Ao

28 - Noviembre - 1965
Ejemplar

28
UCLM-ESI-BDa

Noviembre

1965
1.34

17

Generalizacin

Mecanismos de Abstraccin

La Generalizacin es la accin de abstraer las caractersticas comunes a varias clases (subclases) para constituir una clase ms general (superclase) que las comprenda:
El conjunto de ejemplares de una subclase es un subconjunto de los ejemplares de la correspondiente superclase. Entre los elementos subclase y el elemento superclase se establece una relacin del tipo ES_UN. Ejemplo: La superclase PERSONA es una generalizacin de las subclases PROFESOR y ESTUDIANTE.

El mecanismo inverso de la generalizacin es la Especializacin. Todo ejemplar de una subclase es tambin ejemplar de la superclase y, adems de poseer las caractersticas especficas de la subclase, hereda todas las correspondientes a la superclase. Aunque esta abstraccin es muy intuitiva y muy til, no se contempla en bastantes modelos de datos (p.e. Relacional).
1.35

UCLM-ESI-BDa

Mecanismos de Abstraccin

Generalizacin - representacin
SUPERCLASE
G E N E R A L I Z A C I O N E S P E C I A L I Z A C I O

PERSONA

SUBCLASE 1 . . . SUBCLASE n

PROFESOR

ESTUDIANTE

UCLM-ESI-BDa

1.36

18

Mecanismos de Abstraccin

Asociacin

La Asociacin es una abstraccin que se utiliza para relacionar dos o ms clases (y, por tanto sus ejemplares), crendose un elemento de un tipo distinto. En algunos MD no aparece (p.e. Relacional). El mecanismo inverso es la Disociacin. Algunos autores consideran que es un tipo especial de agregacin, pero en De Miguel et al. (1999) se determinan las siguientes diferencias: Cuando se asocian dos o ms categoras, el nuevo elemento que aparece tiene

determinadas caractersticas que lo distinguen de las categoras normales, por lo que, en general, los MD crean un nuevo concepto para representarlo. El nuevo elemento no est compuesto, como en el caso de la agregacin, por los elementos que asocia. En la agregacin puede existir herencia, y no as en la asociacin.

Ejemplo

Imparte CURSO PROFESOR

UCLM-ESI-BDa

1.37

Mecanismos de Abstraccin

Jerarquas

PERSONA
DNI Nombre Direccin

Combinacin de agregacin de propiedades y generalizacin


PROFESOR ESTUDIANTE

Materia

Tipo

Curso

En el proceso de modelado de una determinada realidad es preciso, a menudo, combinar distintas abstracciones formando una jerarqua de abstracciones
UCLM-ESI-BDa 1.38

19

Mecanismos de Abstraccin

Jerarquas

Ejemplo de abstracciones de clasificacin, agregacin y generalizacin


ESTUDIANTE PERSONA PROFESOR (Profesor i) Persona X DNI 53811 Snchez (Estudiante j) Persona Y 54832 Luis

Nombre

Direccin

P. Rey, 3

Ayala, 12

UCLM-ESI-BDa

1.39

Restricciones de Integridad

Fecha inicio < Fecha Final Todo curso lo imparte un profesor

....................... If Fecha_ ini Fecha_fin THEN ERROR ....................... If Cod _profe en CURSOS = NULL THEN ERROR ........................ CHECK Fecha_ ini < Fecha_fin

CURSOS.Cod_profesor Not Null ...........................

USUARIO

PROGRAMAS

BASE DE DATOS

Migracin de la Semntica de los Datos


UCLM-ESI-BDa 1.40

20

Restricciones de Integridad
Prog . A
Num_Hoas de CURSO <= 80

Prog . B

Num_Hoas de CURSO <= 80

Prog . C

Num_Hoas de CURSO <= 80

Dispersa
Num_Hoas de CURSO <= 80

Integrada Semntica de los datos dispersa vs integrada


UCLM-ESI-BDa 1.41

Componentes

Restricciones de Integridad Una restriccin de integridad tiene 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 evaluar la condicin. de

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.
1.42

UCLM-ESI-BDa

21

Restricciones de Integridad

Clasificacin

RESTRICCIONES

INHERENTES

SEMANTICAS

AJENAS

PROPIAS

ACCION ESPECIFICA Lenguaje de propsito general Lenguaje del SGBD

COND. GENERAL (ACCION RECHAZO)

COND. ESPECIFICA

VERIFICACION ACCION GENERAL

ASERCION.

PROCEDIMIENTOS ALMACENADOS

DISPARADORES

UCLM-ESI-BDa

1.43

Restricciones de Integridad

Clasificacin semnticas propias

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. Segn sea o no preciso definir la accin tenemos existen tipos:
De accin general: es preciso programar un procedimiento (en algn 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.
UCLM-ESI-BDa 1.44

22

Restricciones de Integridad

Clasificacin de accin especfica

En ellas se distinguen 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 siempre lleva asociado el rechazo: 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 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 refieren 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 ...

UCLM-ESI-BDa

1.45

Restricciones de Integridad

Clasificacin otros criterios para clasificar

A) 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.

B) 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. (el sueldo de un empleado menor que el sueldo de su jefe)

C) Segn los criterios de comparacin:


De valor: en la condicin se comparan los valores que pueden tomar las propiedades. Estructurales: imponen limitaciones a la estructura de los elementos del modelo. Por ejemplo, que un atributo no puede tomar ms de un valor.

UCLM-ESI-BDa

1.46

23

Taxonoma de los Modelos de Datos

Segn el nivel de abstraccin que consideremos en la arquitectura ANSI, tendremos modelos internos, globales y externos:
EXTERNO * (punto de vista de cada usuario en particular)

MODELO DE DATOS

GLOBAL * (punto de vista del conjunto de usuarios -empresa-) INTERNO * (punto de vista de la mquina)

Tambin se utiliza la expresin modelos lgicos para hacer referencia tanto a los globales como a los externos, ya que ambos describen aspectos lgicos de los datos -frente a los modelos internos que describen aspectos fsicos.
1.47

UCLM-ESI-BDa

Taxonoma de los Modelos de Datos

Modelos Globales

MD GLOBALES

CONCEPTUALES O SEMNTICOS - enfocados a describir el mundo real con independencia de la mquina CONVENCIONALES O LGICOS - orientados a su implementacin en SGBD -

Entidad/Interrelacin (E/R) Objetos (UML)

Jerrquico Red (Codasyl) Relacional

UCLM-ESI-BDa

1.48

24

Taxonoma de los Modelos de Datos

Modelos Globales convencionales vs conceptuales


CONVENCIONALES - Implementados en SGBD comerciales - Dependen del SGBD - Ms prximos al ordenador - Poca capacidad semntica - Ms enfocados a la implementacin - Interfaz informtico/sistema - Nivel de mediacin entre el nivel externo e interno CONCEPTUALES - No suelen estar implementados en SGBD - Independientes del SGBD - Mayor nivel de abstraccin - Mayor capacidad semntica -Ms enfocados al diseo de alto nivel (modelado conceptual) - Interfaz usuario/informtico

UCLM-ESI-BDa

1.49

Los MD en el proceso de diseo de una BD

Se conoce como proceso de diseo de una BD al conjunto de tareas necesarias para pasar de una determinada realidad (Universo del Discurso) a la BD que la representa. Los MD juegan un importante papel en el proceso de diseo de una BD al ofrecernos facilidades de abstraccin que nos ayudan a representar la realidad. Los objetivos que persigue todo MD son de dos tipos:
a) De Formalizacin: el MD permite definir formalmente las estructuras permitidas y las restricciones; tambin establece la base para la definicin de un lenguaje de datos. b) De Diseo: el MD es un elemento fundamental en el desarrollo de una metodologa de diseo de BD, en el cual se basan los otros componentes de la metodologa (lenguajes, documentacin y otras herramientas).

UCLM-ESI-BDa

1.50

25

Los MD en el proceso de diseo de una BD


visin del mundo real visi que tiene el diseador dise

U D

MUNDO REAL

Universo del Discurso y Mundo Real

UCLM-ESI-BDa

1.51

Los MD en el proceso de diseo de una BD


MUNDO REAL
objetos y asociaciones con sus propiedades y reglas Valores

DISEO CONCEPTUAL

Estructura percibida (no formalizada)

Esquema conceptual
DISEO LOGICO

MODELO CONCEPTUAL SGBD MODELO LGICO MODELO INTERNO

Esquema Global de BD
DISEO FISICO

Esquema interno

Etapas en el diseo de una BD y tipos de MD en que se apoyan


UCLM-ESI-BDa

BASE DE DATOS FISICA


1.52

26

S-ar putea să vă placă și