Vous êtes sur la page 1sur 26

BASES DE DATOS

Tema 2

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

2.2

Contenido

Conceptos Bsicos

Modelo, esquema y ejemplar

Definicin de modelo de
datos

Esttica
Dinmica

Principales mecanismos de
abstraccin

Restricciones de integridad

Componentes de una
restriccin
Clases de restricciones

Taxonoma de los modelos


de datos
Los modelo de datos en el
proceso de diseo de una
BD

Clasificacin.
Agregacin.
Generalizacin.
Asociacin.
Jerarquas de abstracciones

UCLM-ESI-BDa

2.3

Bibliografa

Bsica
Piattini et al. (2006)
Cap. 4

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

UCLM-ESI-BDa

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

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

Lochovsky (1982).
Conjunto de herramientas conceptuales para describir

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

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

UCLM-ESI-BDa

2.6

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

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

2.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
DEDATOS
DATOS
(ESQUEMA)
(ESQUEMA)

UCLM-ESI-BDa

2.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
DATOS Herramienta
Intelectual

ESTRUCTURA
ESTRUCTURA
DE
DEDATOS
DATOS
(ESQUEMA)
(ESQUEMA) Construccin o
Resultado
UCLM-ESI-BDa

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

2.11

Conceptos Bsicos

Tipos de Esquemas
NIVEL EXTERNO

NIVEL GLOBAL

EE1

NIVEL INTERNO

EI1

EE2
EG

EIx

EIm

EEn
CORRESPONDENCIA
EE
EG

CORRESPONDENCIA
EG
EI

Esquemas para los tres niveles de la arquitectura ANSI


UCLM-ESI-BDa

2.12

Conceptos Bsicos

Ejemplos de Esquemas
a) ESQ U EM A G LO B A L

b ) E S Q U E M A IN T E R N O

CURSO DE DOCTORADO
/ * T ip o d e O b j e to * /

CURSOS DE DOCTORADO
/ * R e g i s t r o A lm a c e n a d o * /

CURSO
C O D IG O
NOM BRE
N U M _H O RAS
D E S C R IP C IO N

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

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

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 )

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

C la v e P R O F E S O R , C U R S O

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

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

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 )

EN PASCAL
(2 )
(3 0 )
(1 0 )
(5 0 )
(4 )
so b re

IM P A R T E
F E C H A _ IN I
F E C H A _ F IN

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

(a s ig n a c i n c u rs o s a p ro fe s o re s )

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 )

B y te (8 )
B y te (8 )

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 )

UCLM-ESI-BDa

2.13

Conceptos Bsicos

Ejemplos de Ejemplares
EJEMPLARES
DE CURSO

EJEMPLARES
DE PROFESOR

00101
Introduccin a las Bases de Datos
030
Este curso tiene como objetivo...

001
Andrs Garca Ruiz
12312330
C/ Conde de Vistahermosa
5.621.333

00101
001
12/12/1997
20/12/1997

00102
Seguridad de la informacin
020
La seguridad en la informtica...

002
Mercedes Garca Arias
50179030
C/ Rio Mio
3.928.352

00101
003
01/03/1998
12/03/1998

00203
Diseo de Bases de Datos
100
Dentro de las bases de datos...

003
Julio Lpez Prez
52342876
C/ Segovia
6.564.125

00203
002
05/11/1997
07/12/1997

UCLM-ESI-BDa

EJEMPLARES
DE IMPARTE

2.14

Conceptos Bsicos

Relacin entre Modelo, Esquema y Ejemplar


Conjunto de reglas
para estructurar los
datos del mundo real

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

Valores que toma la


percepcin de una cierta
realidad (esquema) en
un punto en el tiempo

MODELO 1

MODELO i

MODELO n

ESQUEMA 1

ESQUEMA j

ESQUEMA m

EJEMPLAR r

EJEMPLAR p

EJEMPLAR 1

UCLM-ESI-BDa

2.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,

(son los utilizados en BD).

Dbilmente tipados.

UCLM-ESI-BDa

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

2.17

Definicin de Modelo de Datos

Formalizacin

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

UCLM-ESI-BDa

2.18

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

Dominios, que son conjuntos nominados de valores homogneos sobre


los que se definen las propiedades.

Asociaciones entre objetos (interrelaciones, set, etc.)


Propiedades o caractersticas de los objetos o asociaciones (atributos,
campos, elementos de datos, etc.)

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

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

2.20

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

2.21

Definicin de Modelo de Datos

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:

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

2.22

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

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

2.24

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.

UCLM-ESI-BDa

2.25

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

2.26

Mecanismos de Abstraccin

Uso Cotidiano

Los mecanismos de abstraccin los utilizamos - consciente o


inconscientemente - de manera continua:

Clasificacin:

El vehculo de matrcula CR-0978-Z


es de la clase ambulancia.

Agregacin:

Est formada por cuatro ruedas, un


chasis, un motor, ...

Generalizacin:

Una ambulancia es un vehculo para


recoger y transportar enfermos.

Asociacin:

Su propietario es la empresa
CUASER; su conductor es
Fernndez, ...

UCLM-ESI-BDa

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

2.28

Mecanismos de Abstraccin

Clasificacin

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.

UCLM-ESI-BDa

2.29

Mecanismos de Abstraccin

Clasificacin - representacin
Clase

Ejemplar 1

UCLM-ESI-BDa

...

Ejemplar n

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

Curso 1

Curso

. . . . Curso

2.30

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

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

UCLM-ESI-BDa

C.C. e I.A.

2.32

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

2.33

Mecanismos de Abstraccin

Agregacin de propiedades

Fecha

Da

Mes

Agregacin de
propiedades para
obtener una propiedad
compuesta

Ao

28 - Noviembre - 1965
Ejemplar

28
UCLM-ESI-BDa

Noviembre

1965
2.34

Mecanismos de Abstraccin

Generalizacin

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

UCLM-ESI-BDa

2.35

Mecanismos de Abstraccin

Generalizacin - representacin
SUPERCLASE

PERSONA
G
E
N
E
R
A
L
I
Z
A
C
I
O
N

SUBCLASE 1 . . . SUBCLASE n

UCLM-ESI-BDa

E
S
P
E
C
I
A
L
I
Z
A
C
I
O

PROFESOR

ESTUDIANTE

2.36

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

2.37

Mecanismos de Abstraccin

Jerarquas

PERSONA
DNI

Nombre

Direccin

Combinacin de agregacin de propiedades y


generalizacin
PROFESOR

Materia

Tipo

ESTUDIANTE

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

2.38

Mecanismos de Abstraccin

Jerarquas

Ejemplo de abstracciones de clasificacin, agregacin y generalizacin


ESTUDIANTE
PERSONA
PROFESOR
(Profesor i)
Persona X
DNI

53811

Nombre

Snchez

Direccin

P. Rey, 3

(Estudiante j)
Persona Y
54832
Luis

Ayala, 12

UCLM-ESI-BDa

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

2.40

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

2.41

Restricciones de Integridad

Componentes

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.

Las restricciones de integridad se pueden considerar, en cierto modo,


como reglas ECA (Evento, Condicin, Accin):

de

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.

UCLM-ESI-BDa

2.42

Restricciones de Integridad

Clasificacin

RESTRICCIONES

SEMANTICAS

INHERENTES

PROPIAS

AJENAS

ACCION ESPECIFICA
Lenguaje de
propsito
general

Lenguaje
del
SGBD

COND. GENERAL
(ACCION RECHAZO)

VERIFICACION

COND. ESPECIFICA

ASERCION.

ACCION GENERAL

PROCEDIMIENTOS
ALMACENADOS

DISPARADORES

UCLM-ESI-BDa

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

2.44

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

2.45

Restricciones de Integridad

Clasificacin otros criterios para clasificar

A) Segn la dimensin temporal:

B) Segn el mbito o alcance:

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

2.46

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.

UCLM-ESI-BDa

2.47

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 -

UCLM-ESI-BDa

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

Jerrquico
Red (Codasyl)
Relacional

2.48

Taxonoma de los Modelos de Datos

Modelos Globales convencionales vs conceptuales


CONVENCIONALES

CONCEPTUALES

- 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

- 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

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

2.50

Los MD en el proceso de diseo de una BD


visin del mundo real
que tiene el diseador

MUNDO
REAL

Universo del Discurso y Mundo Real

UCLM-ESI-BDa

2.51

Los MD en el proceso de diseo de una BD


MUNDO REAL
Valores

objetos y asociaciones con


sus propiedades y reglas

DISEO CONCEPTUAL

Estructura percibida
(no formalizada)

Esquema
conceptual

MODELO
CONCEPTUAL

DISEO LOGICO

SGBD
MODELO
LGICO

Esquema
Global de BD
DISEO FISICO

MODELO
INTERNO

Esquema
interno

Etapas en el diseo de una BD y


tipos de MD en que se apoyan
UCLM-ESI-BDa

BASE DE
DATOS
FISICA
2.52

Vous aimerez peut-être aussi