Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Modelo Relacional
Modelo Relacional
Introduccin
Modelo de datos relacional:
Teora formal que constituye los
cimientos de los sistemas relacionales
La estructura relacional
Base del modelo relacional
Concepto de RELACIN
Representacin
Columnas Representan las propiedades de
las tablas
NOMBRE
Atributo 1 Atributo 2
...
Atributo n
xxx
xxx
...
xxx
Tupla 1
xxx
xxx
...
xxx
Tupla 2
...
...
...
...
xxx
xxx
...
xxx
...
Tupla m
Filas Contienen
los valores que
cada
Trminos importantes
en la estructura
detoma
datos
relacional:
Ejemplo de relacin
Persona
1
DNI
2
Nombre
Atributos
Grado 6
3
4
5
Apellidos
Direccin
Telfono
Nacimiento
14.167.654
Alberto
Gmez
Martnez
Pedrones, 4
963787878
23/02/1958
2
3
64.237.935
Luisa
Ripoll Albert
Denia, 64
963573895
12/06/1963
45.126.579
Jos
Luis
Prez Cerdn
Escandinavia,
12
963873333
12/06/1963
67.677.887
Andrea
Martnez
Zann
Poeta Ms
Gil, 37
963772564
10/02/1965
44
Cardinalidad 4
Tupla
Clave primaria DNI
Dominios:
nombre, apellidos, direccin texto
DNI entero
telfono entero de 9 dgitos
Nacimiento fecha
Relacin Tabla
En las relaciones:
No se admiten filas duplicadas
Las filas y columnas no estn ordenadas
El cruce entre una fila y una columna solo
puede ser un nico valor
Comparacin de terminologa
RELACIN
TABLA
FICHERO
TUPLA
FILA
REGISTRO
ATRIBUTO
COLUMNA
CAMPO
GRADO
N DE COLUMNAS
N DE CAMPOS
CARDINALIDAD
N DE FILAS
N DE REGISTROS
Dominios
Valores escalares
Son la menor unidad semntica de
informacin (el valor de un dato
individual).
Dominio
Conjunto de valores escalares, todos ellos del
mismo tipo.
Los atributos estn definidos sobre un nico
dominio y toman sus valores reales del
dominio Si los atributos podan ser
simples o compuestos, entonces tenemos:
Dominios simples
Dominio de valores escalares
Dominios compuestos
Combinacin de dominio simples
Ej: La fecha (entero/entero/entero)
Presentacin realizada por Ariadna Fuertes. Departamento de Informtica. Universidad de Valencia
Relaciones
Una Relacin sobre un conjunto de dominios
se compone de dos partes, la cabecera y el
cuerpo.
La cabecera est formada por un conjunto
fijo de pares atributo-dominio (viene a ser la
fila de cabeceras de columnas).
9 dgitos
texto
texto
texto
entero fecha
entero
El cuerpo
est formado
por
el conjunto
de
DNI
Telfono
tuplas Nombre
(sera elApellidos
conjuntoDireccin
de filas de
datos)Nacimiento
que a su vez estn formadas por los pares
atributo-valor, uno para cada atributo de la
cabecera.
Valor 14.167.654 para el
atributo DNI
DNI
Nombre
Apellidos
Consideraciones:
Direccin
Telfono
Nacimiento
14.167.654 Alberto
Pedrones, 4
963787878 23/02/1958
El nmero deGmez
tuplas
que
hay
en
el
cuerpo
Martnez
puedeLuisa
variar Ripoll
con Albert
el tiempo
y nos 963573895
indica la12/06/1963
64.237.935
Denia, 64
cardinalidad
de la
relacin.
45.126.579
Jos
Prez
Cerdn
Escandinavia, 963873333 12/06/1963
Luis
12
El nmero deMartnez
atributosPoeta
queMs
tenemos
en la
67.677.887 Andrea
963772564 10/02/1965
Zann no cambia,
Gil, 37 nos indica el
cabecera, el cual
grado.
Tipos de relaciones:
- Vistas (o relaciones virtuales).
Es una relacin derivada, con nombre.
- Resultados de consultas.
Es una relacin final resultante de alguna
consulta especificada. Puede o no tener
nombre. No tienen persistencia en la BD.
- Resultados intermedios.
Son relaciones resultantes de alguna
expresin relacional anidada dentro de
alguna otra expresin relacional mayor.
- Relaciones temporales.
Es una relacin con nombre, pero que se
destruye de forma automtica en el
momento apropiado.
Cmo
El tratamiento
de valores
se trabaja
con el nulos
valor exige
nulo?definir unas
operaciones especficas para el caso de que
alguno de los operandos tome valores nulos, y a
introducir operadores especiales.
Por ejemplo:
Presentacin realizada por Ariadna Fuertes. Departamento de Informtica. Universidad de Valencia
persona
DNI
Nombre
Apellidos
Direccin
Telfono
Nacimiento
14.167.654
Alberto
Gmez
Martnez
Pedrones, 4
23/02/1958
64.237.935
Luisa
Ripoll Albert
Denia, 64
12/06/1963
45.126.579
Jos
Luis
Prez Cerdn
Escandinavia,
12
963873333
12/06/1963
67.677.887
Andrea
Martnez
Zann
Poeta Ms
Gil, 37
963772564
10/02/1965
10
Reglas de integridad
relacional
Limitaciones en la representacin de los datos
- Debidas a imposiciones del mundo real
P.ej: Un nio de 2 aos no puede ser viudo
Definicin de Restricciones
Restricciones de integridad
- Facilidades ofrecidas al diseador para poder
representar lo ms fielmente posible la semntica de los
datos en el esquema
- Suelen ser especficas de la B.D. sobre la que se aplican
11
Claves primarias
Definiciones:
12
Justificacin:
1. - En la realidad las entidades se identifican de
modo nico tambin en el modelo relacional
2. - La identificacin se realiza por las claves
primarias
3.- Si una clave primaria tiene un nulo, no se
puede aplicar la definicin de clave primaria
sobre la entidad
4.- Por tanto, la entidad no se puede identificar,
y esto contradice la definicin
En una base de datos relacional no se puede
almacenar informacin sobre algo que no se
puede identificar
Presentacin realizada por Ariadna Fuertes. Departamento de Informtica. Universidad de Valencia
13
Claves ajenas
Definicin:
Sean dos relaciones R1 y R2 (no teniendo
porqu ser distintas)
Clave ajena: es un atributo (o conjunto de atributos)
de la relacin R2 cuyos valores son:
o completamente nulos
o coinciden con la clave primaria de la relacin R1
Restriccin referencial:
Es la restriccin por la cul, los valores de una clave ajena
determinada, deben concordar con los valores de la clave
primaria correspondiente
Relacin referencial:
Relacin que contiene a la clave ajena
14
Ejemplo:
empleado
DNI
Nombre
Apellidos
Direccin
Telfono
Nacimiento
14.167.654
Alberto
Gmez
Martnez
Pedrones, 4
963334455
23/02/1958
64.237.935
Luisa
Ripoll Albert
Denia, 64
963456789
12/06/1963
Relacin referencial
puesto
Id_caja
descripcin
DNI
14.167.654
64.237.935
Comentarios:
- La clave ajena y la clave primaria correspondiente
deben definirse sobre el mismo dominio
- La clave ajena no tiene porqu formar parte de la clave
primaria de la relacin que la contiene
- Una relacin referida puede ser tambin referencial con
respecto a otro conjunto de atributos
15
16
Manipulacin
Codd propuso dos alternativas para establecer la
base formal en lo referente a la manipulacin de
la informacin por parte del modelo relacional:
lgebra relacional
Clculo relacional
Diferencias:
El lgebra relacional:
ofrece un conjunto de operadores que permiten
construir una relacin que contiene la informacin
que se busca en la B.D.
La formulacin es prescriptiva (proporciona un
procedimiento para resolver el problema)
El clculo relacional:
solo define la notacin que permite describir las
propiedades que deben cumplir las tuplas de la
relacin resultante
La formulacin es descriptiva (solo plantea el
problema)
17
TRANSFORMACIN DE
LOS DIAGRAMAS E/R
EN RELACIONALES
Reglas generales:
Toda entidad se convierte en relacin
Las relaciones M:N originan la
creacin de una nueva relacin
Toda relacin 1:N se traduce en una
propagacin de la clave (o se crea
una nueva relacin)
18
Relacin 2
Accin
(0 , 1)
(0 , 1)
(0 , 1)
(1 , 1)
Propagar clave de R2 a R1
(1 , 1)
(1 , 1)
Propagacin indiferente
19
Transformacin de la generalizacin
- Englobar los atributos de la entidad y los subtipos en una
sola relacin (con el atributo de distincin de subtipos)
- O crear una relacin para el supertipo y tantas relaciones
como subtipos existan.
- Crear solo relaciones para los subtipos aadiendo los
atributos del supertipo
Transformacin de la agregacin
Se transforma primero el nivel ms alto y despus se trata la
relacin resultante como si fuera una nueva entidad a
relacionar con el nivel ms bajo
Presentacin realizada por Ariadna Fuertes. Departamento de Informtica. Universidad de Valencia
20
Ejemplo resuelto
Autor
Nombre
Cod_aut
(1,N)
Escribe
Cod_eje
Ejemplar
(0,M)
Presta
(1,M)
(1,1)
(1,M)
Tiene
Fech_pre
Fech_dev
Nombre
DNI
(1,M)
Trata
Libro
(1,M)
Cod_li
b
(0,N)
Tema
Ao
Descrip
Escrito en
Tf
(1,N)
Socio
Cod_te
m
Titulo
(0,N)
Cod_id
i
Idioma
Descrip
la relacin, siCodigo_libro
hay, y las claves primarias
de las
Nombre
la clave
de
la
entidad
fuerte
a
la
dbil
formando
parte
de la
Se convierten en columnas de la relacin
entidades)
LIBRO
TRATA
clave primaria de la dbil
PRESTA
Si alguno de los atributos
Codigo_libroes principal formar
Codigo_libro
Codigo_libro
Titulo
Codigo_tema
Transformacin
deprimaria
atributos de relaciones
parte de la clave
Codigo_ejemplar
Ao
DNI
LIBRO
EJEMPLAR
SeAUTOR
convierten en LIBRO
columnas
de
la
relacin
Fecha_prest
ESCRITO_EN
Codigo_libro
Codigo_libro
Codigo_autor
Codigo_ejemp
Codigo_libro
Fecha_dev
Si alguno
de
los
atributos
es
principal
formar parte de
Titulo
Titulo
Codigo_libro
lar
Nombre
Codigo_ejemplar
Codigo_idioma
AoAo
TEMA
SOCIOla clave primaria
IDIOMA
DNI
Nombre Codigo_idioma
Telefono Descripcin
IDIOMA
TEMA
TEMA
Codigo_idioma
Codigo_tema
Codigo_tema
Descripcin
Descripcin
Descripcin
SOCIO
DNI
Nombre
Telefono
Codigo_tema
Descripcin
21
Ejercicio propuesto
Tenemos una empresa que dispone de varias
tiendas distribuidas por diferentes ciudades
espaolas y que se abastece de unos
almacenes que tambin estn ubicados en
diferentes ciudades.
Necesitamos conocer la existencia de
productos tanto en tiendas como en
almacenes.
En la B.D. deber haber informacin sobre
las caractersticas de estos productos tales
como, el peso, las dimensiones, descripcin y
su precio por unidad.
Adems, debemos guardar informacin sobre
los pedidos de las tiendas a los almacenes. Se
pide crear una base de datos mediante el
modelo E-R y pasar el diseo a modelo
relacional.
22