7/24/2019 02.El Modelo Relacional
1/28
El Modelo Relacional.
John Freddy Duitama Muoz.
Facultad de Ingeniera.
U. de. A.
1
7/24/2019 02.El Modelo Relacional
2/28
1. Modelo de Datos.
Que es un modelo de datos?
DEF 1: Abstraccin de la informacin presente en elmundo real, compuesta de tres elementos:1. Estructura de Datos2. Reglas de integridad3. Operaciones posibles sobre los datos.
DEF 2: erramientas conceptuales para describirdatos, sus relaciones, su sem!ntica " las restricciones#ue garanticen su consistencia.
Modelo de datos relacional.$ropuesto por E.F. %odd. en 1&'(. A Relational Modelof Data for Large Shared Data Bank. %ommunicationof t)e A%*. 13. num +, pp. 3''3-'.
2
7/24/2019 02.El Modelo Relacional
3/28
2. La nocin matemtica de una relacin.
Dominio: %onunto de /alores. E: el conunto de los
enteros.
El $roducto cartesianode los dominios D1 ,D2 , . . ., D0,
escritos como D1 D2 ... D0, es el conunto de todas las
0tuplas ordenadas /1,/2,...,/0 tales #ue /1est! en D1, /2
en D2" as4 sucesi/amente.
5na relacin:6ubconunto del producto cartesiano de una
lista de dominios.
3
7/24/2019 02.El Modelo Relacional
4/28
3. La nocin de relacin para un sistema de Bases de Datos.
Retoma la nocin matem!tica, pero elimina la necesidadde mantener el mismo orden para los elementospertenecientes a una tupla " le adiciona un nombre acada componente de la tupla.
Relacin tabla.
4
Nombre
Cdula
Juan
Luis
Luz
1 2 3 4
Cdula Nombre
1 Alba Luz
2 Alba Luz4 Juan
3 Luis
Empleados
7/24/2019 02.El Modelo Relacional
5/28
4. Estructura de Datos relacional.
Relacin tabla.
En donde:
%ada7la es una tupla. %adacolumnaes una componente de la tupla.
Atributo: 8ombre asignado a cada columna de larelacin9 por ello su orden dea de tener importancia.
%ada atributoest! referido a un dominiode donde toma
el /alor para cada tupla #ue perteneca a la relacin.Deben ser atmicos. $ueden o no admitir /alores nulos.
Dominio:%onunto de /alores escalares del mismo tipo.
5
7/24/2019 02.El Modelo Relacional
6/28
Estructura de Datos relacional.cont.
Es#uema: El conunto de atributos de una relacin " sudominio. Eemplo:
Es#uemaEmpleadocedula:num;rica, nombre:cadenaalfabetica
Relacin: empleadosEs#uemaEmpleado
mero de tuplas #ue en un instante dado
tenga una relacin. Asumimos la relacin como 7nita.
?rado :5na relacin, subconunto del producto cartesianosD1 D2 ... D0 , decimos #ue tiene aridad 0 grado 09 silatupla /1,/2,...,/0 tiene 0 componentes.
6
7/24/2019 02.El Modelo Relacional
7/28
5. Relas de interidad relacional.
%la/e candidata:El atributo @ posiblemente compuesto dela relacin R, es una cla/e candidata de esta relacin si "solo si satisface las siguientes dos propiedadesindependientes del tiempo: 5nicidad: En cual#uier momento dado no eisten dos
tuplas en R con el mismos /alor de @.
*inimalidad:6i @ es compuesto, no ser! posible eliminarninguna componente de @ sin destruir la propiedad de
unicidad.
51. Rela de las cla!es primarias.
oda relacin debe poseer una cla/e primaria. Atributo
tomado del conunto de atributos #ue son cla/escandidatas.
8ing>n componente de la cla/e primaria de una relacinpuede aceptar /alores nulos o desconocidos.
7
7/24/2019 02.El Modelo Relacional
8/28
Relas de interidad relacional. "cont#
5.2. Rela de las cla!es $orneas.
5na cla/e for!nea es un atributo #ui! compuesto deuna relacin R2 cu"os /alores deben en todo momentodel tiempo:
concordar con los de la cla/e primaria de algunarelacin R1. donde R1 " R2 no necesariamente sondos relaciones distintas.
O ser nulos.
8otas:
6i la cla/e for!nea es compuesta sus /alores deben sercompletamente nulos o por el contrario no ser nula enninguno de sus componentes.
8
7/24/2019 02.El Modelo Relacional
9/28
Relas de interidad relacional. "cont#
9
Cdula Nombre Dependenia
1 Luz 1!
2 Luz 2!
4 Juan
3 Luis 2!
Empleados
C"di#o Nombre
1! Con$abilidad
2! %is$emas
4! &en$as
3! 'ode#as
%la/e$rimaria:%digo
Dependencias
Dependencia%la/e For!neadel atributo cdigo
%la/e primaria:%;dula.
Bu; )acer con las operaciones #ue intenten /iolar lasreglasC
7/24/2019 02.El Modelo Relacional
10/28
John Freddy Duitama. Universidad de Antioquia 1!
En el mundo real no siempre dispongo de toda la
informacin para cada una de las tuplas de una relacin.
Ee. El tel;fono del empleado.
Debe ser posible entonces para cada atributo de una
relacin, ecepto para la cla/e primaria, decidir cuando
admite no informacin faltante nula.
alores nulos se asimilan a informacin desconocida.
En atributos num;ricos la e/aluacin de un /alor nulo es
diferente a la e/aluacin de un /alor cero.
En epresiones booleanas )a" tres posibles respuestas:
erdadero, falso " desconocido.
%n$ormacin &altante.
7/24/2019 02.El Modelo Relacional
11/28
'. (peraciones en el modelo de datos relacional.
El Algebra Relacional.
6e apo"a en operadores especialiados sobre las relaciones.
Es un !lgebra cerrada. E= resultado de las operacionesde7nidas sobre las relaciones son a su /e nue/as relaciones.
Opera >nicamente sobre el modelo de datos, no re#uieresaber nada acerca de la estructura f4sica de los datos.
$ro/ee un lenguae lo su7cientemente rico para )acer >til alsistema de ases de Datos.
Re#uiere de un es#uema de optimiacin de operacionespara alcanar respuestas r!pidas.
11
7/24/2019 02.El Modelo Relacional
12/28
(peraciones )sicas* +nin.
+nin "R + , #.=a unin de las relaciones R " 6 es elconunto de tuplas #ue est!n en R, en 6 o en ambasrelaciones.
%ompatibilidad respecto a la unin : deben cumplirse dos
condiciones para )acerla efecti/a en el !lgebra relacional: Ambas relaciones deben tener el mismo conunto de
nombres de atributos " de7nidos en el mismo orden.
=os atributos correspondientes deben estar de7nidossobre el mismo dominio.
6olo dea una ocurrencia de las tuplas resultantesrepetidas. 6olo dea una ocurrencia de tuplas con/alores nulos en todos sus atributos.
12
7/24/2019 02.El Modelo Relacional
13/28
(peraciones )sicas* Di$erencia.
%ompatibilidad respecto a la unin : deben cumplirse doscondiciones para )acerla efecti/a en el !lgebra relacional:
Ambas relaciones deben tener el mismo conunto de
nombres de atributos " de7nidos en el mismo orden.
=os atributos correspondientes deben estar de7nidos
sobre el mismo dominio.
Di$erencia " R - , #.Es el conunto de tuplas #ue est!n en
R pero no est!n es 6.
Ambas relaciones re#uiere compatibilidad respecto a launin.
6olo dea una ocurrencia de tuplas con /alores nulos en
todos sus atributos.
13
7/24/2019 02.El Modelo Relacional
14/28
7/24/2019 02.El Modelo Relacional
15/28
John Freddy Duitama. Universidad de Antioquia 15
Renom)rar 1" E # :6ean E un epresin del !lgebra relacional
1 E
Ee:trabaador Empleado
empleado.identidad Empleado.cedula
(peraciones )sicas* Renom)rar
7/24/2019 02.El Modelo Relacional
16/28
(peraciones )sicas* roeccin.
roeccin : Denotada por
6ea R una relacin de aridad 0.
=a pro"eccin consiste en tomar un subconunto de n
atributos, dentro de los 0 posibles, " construir una nue/a
relacin.
6e dea slo una ocurrencia de las tuplas resultantes
repetidas. 6olo dea una ocurrencia de tuplas con /alores
nulos en todos sus atributos.
16
AnAA
R()))(2(1
*+
7/24/2019 02.El Modelo Relacional
17/28
(peraciones )sicas* ,eleccin
,eleccin*Denotada por
F esuna frmula #ue in/olucra:
Operandos constantes "Go atributos de R.
Operadores de comparacin aritm;tica H , HI , J, JI, I , " H J.
Operadores lgicos. and , or , not.
Se permiten los parntesis.
Operador para /alores nulos. Is nll, Is not nll.
F retorna el /alor de erdadero, falso o desconocido.
=a seleccin : %onunto de todas las tplas tpertenecientes a R paralas #ue la frmula F es /erdadera. 6e conser/a el es#uema de R.
=as tuplas con un atributo en F nulo " condiciones diferentes a is not
null retornan desconocido.
17
*+RF
7/24/2019 02.El Modelo Relacional
18/28
(peraciones adicionales* %nterseccin
De7nidas a partir de las operaciones b!sicas parafacilidad de los usuarios.
%nterseccin * Denotada por R 6 .
R " 6 Deben ser compatibles respecto a la unin.
=a relacin resultante tiene un es#uema id;ntico al deR al de 6.
6u cuerpo est! formado por todas las tuplas t
pertenecientes tanto a R como a 6.
Es e#ui/alente a la epresin: R R 6.
Jo,n -redd. Dui$ama)
/ni0ersidad de
An$io uia
18
7/24/2019 02.El Modelo Relacional
19/28
(peraciones adicionales* Di!isin
Di!isin " R 6 *6ean R " 6 relaciones de aridad r " srespecti/amente, donde r J s " 6 .
El cociente es el conunto de tuplas de aridad r K s,a1 ,a2 , ... , a r s !atri"tos no #omnes entre R $ S%
tales #ue:
$ara toda tuplaen 6, eiste en R la subtupla
a1, ... , ars acompaL!ndola E:
Jo,n -redd. Dui$ama)
/ni0ersidad de
An$io uia
19
W X Y Z
A ' C D
A ' D
' C -
D C D
D -
A ' -
Y Z
C D
-
W X
A '
D
%
7/24/2019 02.El Modelo Relacional
20/28
(peraciones adicionales* Eemplos.
Jo,n -redd. Dui$ama)
/ni0ersidad de
An$io uia
2!
Cdula Nombre Car#o Dependenia
1 Luz %ere$aria 1!
2 Luz %ere$aria 2!
4 Juan Auiliar 1!
3 Luis Analis$a 2!
Empleados
C"di#o DNombre
1! Con$abilidad
2! %is$emas
4! &en$as
3! 'ode#as
Dependencias
7/24/2019 02.El Modelo Relacional
21/28
(peraciones adicionales del le)ra* Eemplos
Eemplos:
1. Empleados de la dependencia 1(.
2. Dependencias sin empleados.
3. Dependencias #ue no tienen auiliar.
M. %argos #ue aparecen en todos los departamentos.
N. %argos #ue aparecen en todos los departamentos #ue
tengan al menos un empleado.
+. 8ombre de los empleados " nombre del departamentoen donde trabaan.
21
7/24/2019 02.El Modelo Relacional
22/28
(peraciones adicionales* Reunin-
Reunin-
*Denotada por R 6 F
DondeF esuna frmula #ue in/olucra: Atributos de R " 6. Operadores de comparacin aritm;tica H , HI , J, JI,
I , " H J . Operadores lgicos. and , or , not.
=a reuninde R " 6, es una relacin :
%on es#uema : Es#uemaR Union Es#uema6.
%on un cuerpo: formado por el conunto de todas lastuplast tales #ue pertenecan al producto cru de R 6
" la e/aluacin de la frmula F sea /erdadera para esastuplas.
6i el operador usado en F es el I se le llama e#uireunion.
22
7/24/2019 02.El Modelo Relacional
23/28
(peraciones adicionales* Reunin natural
Reunin natural * Denotada por R 6.
6ean las Relacines R 1, 2, ...,m, "1, "2, ..., "n "
6 "1, "2, ..., "n ,1, 2, ..., p 9
=os atributos "1,"2,...,"n son comunes a ambas relaciones " adem!s,los atributos correspondientes est!n de7nidos sobre el mismo dominio.
=a reunin natural de R " 6 es una relacin:
%ones#uema I 1, 2, ... ,m, "1, "2,..., "n, 1, 2 , ... , p
" tuplasformadas por:
5na tupla t1#ue aparece enRcon los /alores ie "i correspondientes.
5na tupla t2#ue aparece en6 con los /alores "i " icorrespondientes.
=os atributos "ide ambas tuplas tienen el mismo /alor.
23
7/24/2019 02.El Modelo Relacional
24/28
(peraciones adicionales* Reunin natural. "cont#
Reunin natural * Denotada por R 6.
De7nida en t;rminos de operaciones b!sicas:
6ean las Relacines
R 1,2,...,m,"1,"2,...,"n "
6 "1,"2,...,"n,1,2,...,p 9
=os atributos "1,"2,...,"n son comunes a ambas relaciones
" adem!s los atributos correspondientes est!n de7nidossobre el mismo dominio.
Entonces:
R 6
1,..,m,"1,...,"n,1,...,p" R."1I 6."1 and R 6
R."2I6."2 and
.......................
Jo,n -redd. Dui$ama)
/ni0ersidad de
An$io uia
24
7/24/2019 02.El Modelo Relacional
25/28
(peraciones adicionales del le)ra relacional.
1. Reunion natural entre E*$=EADO6 " DE$E8DE8%
7/24/2019 02.El Modelo Relacional
26/28
6le)ra etendida* Reunin eterna
Reunin- eterna *Denotada por R 6
=a reunineterna de R " 6, es una relacin #ue trabaacon los atributos faltantes.
%on es#uema :
7/24/2019 02.El Modelo Relacional
27/28
6le)ra etendida* Reunin eterna
Reunion eterna por la derec)a entre
empleados dependencias.
Jo,n -redd. Dui$ama)
/ni0ersidad de
An$io uia
27
Cdula Nombre Car#o Dependenia
1 Luz %ere$aria 1!
2 Luz %ere$aria 2!
4 Juan Auiliar 1!
3 Luis Analis$a
2!
Dependenia D)Nombre
1! Con$abilidad
2! %is$emas
1! Con$abilidad
2! %is$emas
4! &en$as
3! 'ode#a
7/24/2019 02.El Modelo Relacional
28/28
6notaciones complementarias.
5na ase de datos relacional es una ase de Datos
percibida por el usuario como un conunto de relaciones,
l;ase tablas normaliadas " de di/erso grado.
=as ideas del modelo se aplican al ni/el eterno "
conceptual del sistema.