Sei sulla pagina 1di 29

Ingeniero en Geomtica

1
Base de Datos
Dr. J. Horacio Hernndez Anguiano
UNIVERSIDAD DE GUANAJUATO
Facultad de Ingeniera en Geomtica e
Hidrulica
Temario general
agosto de 2013 Base de Datos ( Unidad II )
1. Introduccin y conceptos bsicos.
2. El Modelo relacional y Algebra Relacional.
3. El lenguaje SQL.
4. Introduccin al diseo de BD.
5. Prcticas con Sistemas de Gestin de
Bases de Datos relacionales (SGBD).
6. Prcticas con Geodatabases.
2
Ingeniero en Geomtica
2
2. El modelo relacional y el lgebra
relacional.
agosto de 2013 Base de Datos ( Unidad II )
2.1 El modelo relacional.
2.1.1 Estructura de los datos.
2.1.2 Operaciones del modelo relacional
2.1.3 Reglas de integridad
2.2 El lgebra relacional.
2.2.1 Operaciones conjuntistas
2.2.2 Operaciones especficamente relacionales.
2.2.3 Secuencias de operaciones de lgebra
relacional
2.2.4 Extensiones: combinaciones externas
3
2.1 El modelo relacional
agosto de 2013 Base de Datos ( Unidad II ) 4
Modelo
Relacional.
Tres tipos de herramientas que
nos proporciona el modelo
relacional para gestionar la
arquitectura del SGBD:
1. De estructura: con las que se
puede construir la BD.
2. De manipulacin: son una serie
de operaciones para trabajar
con los datos.
3. De integridad: para establecer
reglas de integridad.
1969-1970: E.F. Codd defini los principios del modelo de datos
relacional, pero no fue hasta los ochenta que se empez a comercializar
con los SGBD.
Modelos de BD
Ingeniero en Geomtica
3
2.1 El modelo relacional
agosto de 2013 Base de Datos ( Unidad II ) 5
Principal objetivo del modelo relacional:
Facilitar que la base de datos sea percibida o
vista por el usuario como una estructura lgica que
consiste en un conjunto de relaciones y no como una
estructura fsica de implementacin.
2.1 El modelo relacional
agosto de 2013 Base de Datos ( Unidad II ) 6
Herramientas de Estructura, Manipulacin e Integridad que nos debe
ofrecer todo modelo de datos, en este caso del modelo relacional.
SGBD
DATOS
USUARIOS
H. Estructura
BD
H. Manipulacin
H. Integridad
Modelo
Relacional
Modelo de
La realidad
Ingeniero en Geomtica
4
2.1.1 Estructura de los datos
agosto de 2013 Base de Datos ( Unidad II ) 7
Herramientas de estructura:
Las herramientas que definen la estructura de los datos, en el nivel
lgico, estn pensadas bajo el concepto de relacin.
Visin informal de una relacin.
Visin formal de una relacin.
Diferencias entre relaciones y ficheros.
Clave candidata, clave primaria y clave alternativa de las
relaciones.
Claves forneas de las relaciones.
Creacin de las relaciones de una base de datos.
2.1.1 Estructura de los datos
agosto de 2013 Base de Datos ( Unidad II ) 8
Definicin informal de una relacin.
Informalmente solemos describir una tabla de la siguiente manera:
Relacin 1
Relacin 2
Relacin 3
Columnas
Cabecera
Filas
Ingeniero en Geomtica
5
2.1.1 Estructura de los datos
agosto de 2013 Base de Datos ( Unidad II ) 9
Visin formal de una relacin:
Dominio atmico: conjunto de valores indivisibles (columna de datos).
Dominios predefinidos: ya vienen con los SGBD y definen tipos de
datos, p. ejemplo los enteros, las cadenas de caracteres, los nmeros
reales, etc.
Dominios definidos por el usuario: el usuario puede ser ms
especfico y definir que tipo de datos y sus restricciones.
Una relacin: se compone de dos partes el esquema y la extensin.
Esquema
Extensin
tupla 1
tupla 2
tupla 3
C
o
n
j
u
n
t
o

d
e

t
u
p
l
a
s
2.1.1 Estructura de los datos
agosto de 2013 Base de Datos ( Unidad II ) 10
Visin formal de una relacin:
Esquema
Extensin
Relacin
Nombre de relacin: R
Conjunto de atributos: {A
1
,A
2
,,A
n
}
Entonces:
R(A
1
,A
2
,,A
n
) = R(A2,A1,,An)
Y por lo tanto la consulta:
Empleados(DNI) =
DNI Nombre
40.444.255
33.567.711
55.898.425
Ingeniero en Geomtica
6
2.1.1 Estructura de los datos
agosto de 2013 Base de Datos ( Unidad II ) 11
Visin formal de una relacin:
Esquema
Extensin
Relacin
La extensin de la relacin de esquema
empleados R(A
1
,A
2
,,A
n
) es un conjun-
to de tuplas, donde cada tupla es a su
vez un conjunto de pares y cada par
es un valor de dominio.
<40.444.255, Juan, Garca, 2.000>
<33.567.711, Marta, Roca, 2.500>
<55.898.425, Carlos, Buenda, 1.500>
Vista de la extensin
Empleados como un
conjunto de tuplas y no
como filas y columnas.
2.1.1 Estructura de los datos
agosto de 2013 Base de Datos ( Unidad II ) 12
Visin formal de una relacin.
Grado de una relacin: es el nmero de atributos que pertenecen a su
esquema.
Cardinalidad de una relacin: es el nmero de tuplas que pertenecen a
su extensin.
La cardinalidad de esta relacin es 3 (tres
filas)
Relacin
Esta relacin es de
Grado 4 (cuatro
columnas)
Ingeniero en Geomtica
7
2.1.1 Estructura de los datos
agosto de 2013 Base de Datos ( Unidad II ) 13
Visin formal de una relacin.
Entonces, visto de manera informal o formal se tiene la siguiente
relacin de conceptos:
Relacin de conceptos:
INFORMAL FORMAL
tabla relaciones
columnas atributos
dominios
filas extensin
tuplas
2.1.1 Estructura de los datos
agosto de 2013 Base de Datos ( Unidad II ) 14
Diferencias entre relaciones y ficheros.
A primera vista, relaciones y ficheros resultan similares. Aunque, las
relaciones tienen las siguientes caractersticas que los ficheros
clsicos no tienen:
Atomicidad de los valores de los atributos: los valores de los
atributos no tienen estructura interna, porque ya est definida por el
dominio.
No repeticin de las tuplas: en un fichero clsico puede ocurrir que
dos de los registros sean exactamente iguales.
No ordenacin de las tuplas: no es posible que haya orden entre los
elementos de un conjunto.
No-ordenacin de los atributos: es decir, las columnas pueden tener
cualquier ordenacin pues ello no influye en la relacin.
Ingeniero en Geomtica
8
2.1.1 Estructura de los datos
agosto de 2013 Base de Datos ( Unidad II ) 15
Clave candidata, clave primaria y clave alternativa de las
relaciones.
Clave candidata: se refiere a los dominios (columnas) que cumplen con
el requisito para ser clave primaria.
Clave primaria: el usuario elige la clave primaria a partir de las claves
o clave candidata.
Clave alternativa: las claves candidatas no elegidas como clave
primaria pasan a ser claves alternativas.
NOTA: es posible que una clave primaria pueda estar formada por
ms de un atributo.
2.1.1 Estructura de los datos
agosto de 2013 Base de Datos ( Unidad II ) 16
Claves forneas de las relaciones.
Las claves forneas permiten establecer conexiones entre las tuplas
de diferentes relaciones (tablas), y tienen por objetivo establecer
una conexin con la clave primaria que referencian.
Los dominios deben tener
el mismo tipo de
informacin, ser iguales,
en ambas tablas para
poder establecer una
conexin.
Ingeniero en Geomtica
9
2.1.1 Estructura de los datos
agosto de 2013 Base de Datos ( Unidad II ) 17
Creacin de las relaciones de una base de datos.
Hemos visto entonces que cada relacin tiene varios atributos, los
atributos toman valores de unos ciertos dominios; la relacin tiene
tambin una clave primaria y puede tener una o ms claves forneas.
Los SGBD permiten
Definir estos elemen-
tos para generar una
Base de Datos
Dominios
Tuplas
Clave primaria
Clave(s) foranea(s)
BD
2.1 El modelo relacional
agosto de 2013 Base de Datos ( Unidad II ) 18
Herramientas de Estructura, Manipulacin e Integridad que nos debe
ofrecer todo modelo de datos, en este caso del modelo relacional.
SGBD
DATOS
USUARIOS
H. Estructura
BD
H. Manipulacin
H. Integridad
Modelo
Relacional
Modelo de
La realidad
Ingeniero en Geomtica
10
2.1.2 Operaciones del modelo
relacional
agosto de 2013 Base de Datos ( Unidad II ) 19
Herramientas de manipulacin:
Las herramientas de manipulacin del modelo relacional deben
permitir manipular datos almacenados en una base de datos
relacional.
Actualizacin de datos.
Consultas de usuarios.
2.1.2 Operaciones del modelo
relacional
agosto de 2013 Base de Datos ( Unidad II ) 20
Actualizacin de datos:
Las herramientas de actualizacin de los datos permiten que los
cambios que se producen en la realidad queden reflejados en las
relaciones de la base de datos.
Insercin: sirve para aadir una o ms tuplas a una relacin.
Borrado: sirve para eliminar una o ms tuplas de una relacin.
Modificacin: sirve para alterar los valores que tienen una o
ms tuplas de una relacin para uno o ms de sus atributos.
Ingeniero en Geomtica
11
2.1.2 Operaciones del modelo
relacional
agosto de 2013 Base de Datos ( Unidad II ) 21
Consultas de usuarios:
La consulta de los datos consiste en la obtencin de datos deducibles
a partir de las relaciones que contienen la base de datos.
Consulta
Usuario
Lenguaje
SQL
Lenguaje del
Algebra relacional
Lenguaje del
clculo relacional
SGBD
BD:
Tabla1
Tabla2
Tabla3
CP CF
CP: clave primaria
CF: clave fornea
2.1 El modelo relacional
agosto de 2013 Base de Datos ( Unidad II ) 22
Herramientas de Estructura, Manipulacin e Integridad que nos debe
ofrecer todo modelo de datos, en este caso del modelo relacional.
SGBD
DATOS
USUARIOS
H. Estructura
BD
H. Manipulacin
H. Integridad
Modelo
Relacional
Modelo de
La realidad
Ingeniero en Geomtica
12
2.1.3 Reglas de integridad
agosto de 2013 Base de Datos ( Unidad II ) 23
Herramientas de integridad:
Denominamos integridad la propiedad de los datos de corresponder a
representaciones plausibles del mundo real. Por ejemplo, qu sentido
tiene que en la tabla de empleados la columna sueldo tenga valores
negativos, porque no pueden ser negativos.
Restricciones de integridad de usuario
Reglas de integridad del modelo
Unicidad de la clave primaria: no repetir claves
Integridad de entidad de la clave primaria: no claves vacas
integridad referencial: no eliminar claves
Integridad de dominio: no almacenar nmero si es tipo texto.
2.1.3 Reglas de integridad
agosto de 2013 Base de Datos ( Unidad II ) 24
Restricciones de integridad de usuario:
El usuario podr definir ciertas reglas de integridad que ms
convengan a los datos que debe gestionar. Por ejemplo, puede
configurar una regla que no permita tener valores negativos.
Ingeniero en Geomtica
13
2.1.3 Reglas de integridad
agosto de 2013 Base de Datos ( Unidad II ) 25
Reglas de integridad del modelo:
Unicidad de la clave primaria
La clave primaria no puede repetirse:
Edificio nmero = clave primaria nica
2.1.3 Reglas de integridad
agosto de 2013 Base de Datos ( Unidad II ) 26
Reglas de integridad del modelo:
Integridad de la clave primaria
Los valores que forman la clave primaria no pueden ser valores nulos.
Clave primaria: no puede haber valores
nulos
Ingeniero en Geomtica
14
2.1.3 Reglas de integridad
agosto de 2013 Base de Datos ( Unidad II ) 27
Reglas de integridad del modelo:
Integridad referencial
Las clave fornea, que permite conectar con la tabla con clave
primaria, no puede tener un valor que no est en la clave primaria, o
de otra forma su valor debe ser nulo.
Clave primaria
2.1.3 Reglas de integridad
agosto de 2013 Base de Datos ( Unidad II ) 28
Reglas de integridad del modelo:
Integridad referencial
Restriccin
La poltica de restriccin consiste en no aceptar una operacin que
modifique o transforme la clave primaria.
Restriccin:
- Borrado
- Modificacin
Restriccin aplicable
si la clave primaria
est referenciada a una
clava fornea
Ingeniero en Geomtica
15
2.1.3 Reglas de integridad
agosto de 2013 Base de Datos ( Unidad II ) 29
Reglas de integridad del modelo:
Integridad referencial
Actualizacin en cascada
La poltica de actualizacin en cascada consiste en permitir la
operacin de actualizacin de la tupla siempre que se haga una
actualizacin en cascada en todas las claves forneas.
Permitir:
- Borrado
- Modificacin
Permiso aplicable
siempre que se haga
una actualizacin en
cascada en todas las
claves forneas.
2.1.3 Reglas de integridad
agosto de 2013 Base de Datos ( Unidad II ) 30
Reglas de integridad del modelo:
Integridad referencial
Anulacin
La poltica de anulacin consiste en permitir actualizar la tupla con la
clave primaria y efectuar acciones compensatorias en las claves
forneas, esto es, poner valores nulos en claves forneas sin conexin
con clave primaria.
Permitir:
- Borrado
- Modificacin
Permiso aplicable
siempre que los valores
sin conexin de la clave
fornea se conviertan
a valor nulo
Ingeniero en Geomtica
16
2.1.3 Reglas de integridad
agosto de 2013 Base de Datos ( Unidad II ) 31
Reglas de integridad del modelo:
Integridad del dominio
Esta poltica obliga a que un dominio almacene la informacin que le
corresponde, es decir, en el dominio fecha slo se aceptan fechas, o
en el dominio CURP slo claves y no fechas.
Dominios:
-Fecha (dd/mm/yyyy)
-CURP (clave 17 dgitos)
Valores:
- 15/sept/2012 (no valido)
- 15/09/2012 (ok)
- HEAJ 820920 (no valido)
2.2 El lgebra relacional
agosto de 2013 Base de Datos ( Unidad II ) 32
Una caracterstica destacable de todas las operaciones del lgebra
relacional es que tanto los operandos como el resultado son
relaciones. Esta propiedad se denomina cierre relacional.
Consulta
Usuario
Lenguaje
SQL
Lenguaje del
lgebra relacional
Lenguaje del
clculo relacional
SGBD
BD:
Tabla1
Tabla2
Tabla3
CP CF
Ingeniero en Geomtica
17
2.2 El lgebra relacional
agosto de 2013 Base de Datos ( Unidad II ) 33
En todas las operaciones del lgebra relacional tanto los operandos
como el resultado son todo relaciones.
Operacin
del lgebra
relacional
Operandos: Resultado:
2.2 El lgebra relacional
agosto de 2013 Base de Datos ( Unidad II ) 34
Operacin redenominar: las operaciones del lgebra relacional
obtienen como resultado un nueva relacin cuyo nombre de la tabla y
atributos se pueden cambiar.
La operacin redenominar se denota con el smbolo :=, y permite
asignar un nuevo nombre al resultado de una operacin. Por ejemplo:
Cambiar nombre de la tabla que resulta de unir dos tablas:
EMPLEADOS := EMPLEADOS_ADM EMPLEADOS_PROD
Cambiar el nombre de la tabla y el nombre de las columnas:
R(A
1
,A
2
,,A
n
) := S(B
1
,B
2
,,B
n
)
Ingeniero en Geomtica
18
2.2 El lgebra relacional
agosto de 2013 Base de Datos ( Unidad II ) 35
Las operaciones del lgebra relacional se pueden clasificar en tres
criterios:
1. Operaciones conjuntistas:
Unin
Interseccin
Diferencia
Producto cartesiano
2. Operaciones especficamente relacionales:
Seleccin
Proyeccin
Combinacin
3. Secuencias de operaciones de lgebra relacional.
2.2.1 Operaciones conjuntistas
agosto de 2013 Base de Datos ( Unidad II ) 36
Operacin Unin: la unin es una operacin binaria, y la unin de dos
relaciones T1 y T2 se indican T1 T2.
Slo tiene sentido aplicar la unin a relaciones que tengan tuplas
similares:
CF DIRECC2 NOM2
1 CALLE1 ALE
2 CALLE2 JULI

=
CP DIRECC NOM
1 CALLE1 ALE
2 CALLE2 JULI
3 ANDAR1 JUAN
4 ANDAR2 LUIS

=
Relacin1 Relacin2 Relacin3
CP DIRECC NOM
3 ANDAR1 JUAN
4 ANDAR2 LUIS
1 CALLE1 ALE
Ingeniero en Geomtica
19
2.2.1 Operaciones conjuntistas
agosto de 2013 Base de Datos ( Unidad II ) 37
La unin de dos tablas slo es posible si las dos relaciones son
compatibles.
Tablas compatibles:
Tienen el mismo grado
Se puede establecer una biyeccin entre los atributos de la tabla1
y la tabla2, esto es, debe haber correspondencia.
Tabla resultante (unin):
Los atributos del esquema de la relacin resultante de T1 T2
coinciden con los atributos del esquema de la relacin T1.
La extensin de la relacin resultante de T1 T2 es el conjunto
de tuplas que pertenecen a la extensin de T1, a la extensin de
T2 o a la extensin de ambas relaciones.
2.2.1 Operaciones conjuntistas
agosto de 2013 Base de Datos ( Unidad II ) 38
Operacin Interseccin: la interseccin es una operacin binaria; la
interseccin de dos relaciones T1 y T2 se indica T1 T2.
La interseccin, como la unin, slo se puede aplicar a relaciones que
tengan tuplas similares.
CF DIRECC2 NOM2
1 CALLE1 ALE
2 CALLE2 JULI

=
CP DIRECC NOM
1 CALLE1 ALE

=
Relacin1 Relacin2 Relacin3
CP DIRECC NOM
3 ANDAR1 JUAN
4 ANDAR2 LUIS
1 CALLE1 ALE
Ingeniero en Geomtica
20
2.2.1 Operaciones conjuntistas
agosto de 2013 Base de Datos ( Unidad II ) 39
La interseccin de dos tablas slo es posible si las dos relaciones son
compatibles.
Tabla resultante (interseccin):
Los atributos del esquema de la relacin resultante de T1 T2
coinciden con los atributos del esquema de la relacin T1.
La extensin de la relacin resultante de T1 T2 es el conjunto
de tuplas que pertenecen a la extensin de ambas relaciones.
2.2.1 Operaciones conjuntistas
agosto de 2013 Base de Datos ( Unidad II ) 40
Operacin de Diferencia: la diferencia entre las relaciones T1 y T2
se indica como T1T2.
La diferencia , como ocurra en la unin y la interseccin, slo tiene
sentido si se aplica a relaciones que tengan tuplas similares.
CF DIRECC2 NOM2
1 CALLE1 ALE
2 CALLE2 JULI
-
=
CP DIRECC NOM
3 ANDAR1 JUAN
4 ANDAR2 LUIS
=
Relacin1 Relacin2 Relacin3
CP DIRECC NOM
3 ANDAR1 JUAN
4 ANDAR2 LUIS
1 CALLE1 ALE
-
Ingeniero en Geomtica
21
2.2.1 Operaciones conjuntistas
agosto de 2013 Base de Datos ( Unidad II ) 41
La diferencia de dos tablas slo es posible si las dos relaciones son
compatibles.
Tabla resultante (interseccin):
Los atributos del esquema de la relacin resultante de T1 - T2
coinciden con los atributos del esquema de la relacin T1.
La extensin de la relacin resultante de T1 - T2 es el conjunto
de tuplas que pertenecen a la extensin T1, pero no a la de T2.
2.2.1 Operaciones conjuntistas
agosto de 2013 Base de Datos ( Unidad II ) 42
Operacin Producto Cartesiano: el producto cartesiano es una
operacin que, a partir de dos relaciones, obtiene una nueva relacin
formada por todas las tuplas que resultan de concatenar tuplas de la
primera relacin con tuplas de la segunda. El producto cartesiano de
T1 y T2 se indica como T1 T2.
CF DIRECC2 NOM2
1 CALLE1 ALE
2 CALLE2 JULI
=
CP DIRECC NOM CF DIRECC2 NOM2
3 ANDAR1 JUAN 1 CALLE1 ALE
3 ANDAR1 JUAN 2 CALLE2 JULI
4 ANDAR2 LUIS 1 CALLE1 ALE
4 ANDAR2 LUIS 2 CALLE2 JULI
1 CALLE1 ALE 1 CALLE1 ALE
1 CALLE1 ALE 2 CALLE2 JULI
=
Relacin1 Relacin2 Relacin3
CP DIRECC NOM
3 ANDAR1 JUAN
4 ANDAR2 LUIS
1 CALLE1 ALE

Ingeniero en Geomtica
22
2.2.1 Operaciones conjuntistas
agosto de 2013 Base de Datos ( Unidad II ) 43
Para realizar el producto cartesiano los atributos (columnas) de
ambas relaciones deben tener nombres distintos.
Tabla resultante (producto cartesiano):
Los atributos del esquema de la relacin resultante de T1 T2
son todos los atributos T1 y todos los atributos de T2.
El grado y cardinalidad de la relacin resultante de T1 T2 es:
Grado: es igual a la suma de los grados de ambas relaciones T1
y T2.
Cardinalidad: es igual al producto de la cardinalidad de ambas
relaciones T1 y T2.
2.2.2 Operaciones especficamente
relacionales
agosto de 2013 Base de Datos ( Unidad II ) 44
Operacin de seleccin: se trata de una operacin que nos permite
seleccionar algunas tuplas de una relacin y eliminar el resto.
La seleccin es una operacin unaria. Siendo C una condicin de
seleccin, la seleccin de T con la condicin C se indica como T(C).
T
Superf Direccin Edificio Nmero
20 ANDAR1 Salmar 120
25 ANDAR1 Miramar 130
30 CALLE1 Tablaroca 115
15 CALLE1 Villamar 120
24 CALLE1 Marina 125
Para seleccionar los edificios en la
CALLE1 y con Superficie mayor
que 20:
Seleccin :=T(Direccin=CALLE1 y
Superf > 20)
Ingeniero en Geomtica
23
2.2.2 Operaciones especficamente
relacionales
agosto de 2013 Base de Datos ( Unidad II ) 45
Para hacer una seleccin podemos utilizar distintos operadores de
comparacin:
=, =, <, , >, u
El resultado de la seleccin T(C) es una nueva tabla con los mismos
atributos del esquema de la relacin T.
T
Superf Direccin Edificio Nmero
20 ANDAR1 Salmar 120
25 ANDAR1 Miramar 130
30 CALLE1 Tablaroca 115
15 CALLE1 Villamar 120
24 CALLE1 Marina 125
Seleccin
Superf Direccin Edificio Nmero
30 CALLE1 Tablaroca 115
24 CALLE1 Marina 125
Seleccin :=T(Direccin=CALLE1 y
Superf > 20)
2.2.2 Operaciones especficamente
relacionales
agosto de 2013 Base de Datos ( Unidad II ) 46
Operacin de Proyeccin: operacin que sirve para elegir algunos
atributos de una relacin y eliminar el resto.
La proyeccin es una operacin unaria. Siendo {A
i
,A
j
,,A
k
} un
subconjunto de los atributos del esquema de la relacin T, la
proyeccin de T sobre {A
i
,A
j
,,A
k
} se indica como T[A
i
,A
j
,,A
k
].
T
Superf Direccin Edificio Nmero
20 ANDAR1 Salmar 120
25 ANDAR1 Miramar 130
30 CALLE1 Tablaroca 115
Proyeccin
Superf Edificio
20 Salmar
25 Miramar
30 Tablaroca
Proyeccin :=T[Superf, Edificio]
Ingeniero en Geomtica
24
2.2.2 Operaciones especficamente
relacionales.
agosto de 2013 Base de Datos ( Unidad II ) 47
Entonces:
La proyeccin permite generar una nueva relacin con los
atributos seleccionados.
La nueva relacin generada por una proyeccin es una
relacin vlida y no puede tener repeticiones de tuplas.
La proyeccin elimina las tuplas repetidas que se generen
2.2.2 Operaciones especficamente
relacionales
agosto de 2013 Base de Datos ( Unidad II ) 48
Operacin de Combinacin: operacin binaria que permite combinar
dos relaciones en una nueva relacin a partir de una condicin de
combinacin.
La combinacin de T1 y T2 segn la condicin B se indica T1[B]T2.
R := T1[Superf Superf2, Direccin = Direccin2]T2
T1
Superf Direccin Edificio Nmero
20 ANDAR1 Salmar 120
25 ANDAR1 Miramar 130
15 CALLE1 Tablaroca 115
T2
Superf2 Direccin2 Edificio2
15 ANDAR1 Pelicanos
20 ANDAR2 Salagua
20 CALLE1 Miramar
R
Superf Direccin Edificio Nmero Superf2 Direccin2 Edificio2
20 ANDAR1 Salmar 120 15 ANDAR1 Pelicanos
25 ANDAR1 Miramar 120 15 ANDAR1 Pelicanos
Ingeniero en Geomtica
25
2.2.2 Operaciones especficamente
relacionales
agosto de 2013 Base de Datos ( Unidad II ) 49
En la combinacin T1 [B] T2, B representa una o ms comparaciones
de la forma A
i
0 A
j
los operadores de comparacin representados por
0 son:
=, =, <, , >, u
NOTA: la operacin de combinacin slo puede realizarse si ambas
relaciones, T1 y T2, no tienen ningn nombre de atributos comn.
T1
Superf Direccin Edificio Nmero
20 ANDAR1 Salmar 120
25 ANDAR1 Miramar 130
15 CALLE1 Tablaroca 115
T2
Superf2 Direccin Edificio2
15 ANDAR1 Pelicanos
20 ANDAR2 Salagua
20 CALLE1 Miramar
No pueden tener el mismo nombre
2.2.2 Operaciones especficamente
relacionales
agosto de 2013 Base de Datos ( Unidad II ) 50
Operacin de Combinacin natural: operacin entre dos relaciones
T1 y T2 que se denota como T1 * T2 y consiste bsicamente en una
equicombinacin seguida de la eliminacin de los atributos superfluos
(innecesarios).
Equicombinacin: es una operacin de combinacin que utiliza
nicamente el operador =, pero el resultado siempre incluye
atributos (columnas) con valores idnticos en todas las tuplas.
NOTA: a diferencia de la equicombinacin, la combinacin natural se
aplica a relaciones que tienen nombres de atributos comunes.
Ingeniero en Geomtica
26
2.2.2 Operaciones especficamente
relacionales
agosto de 2013 Base de Datos ( Unidad II ) 51
Ejemplo de una combinacin natural: los atributos Direccin se
igualan para poder combinar naturalmente las tablas a travs de este
atributo. R:= T1 * T2
T1
Superf Direccin Edificio Nmero
20 ANDAR1 Salmar 120
25 ANDAR1 Miramar 130
15 CALLE1 Tablaroca 115
T2
Superf2 Direccin Edificio2
15 ANDAR1 Pelicanos
20 ANDAR2 Salagua
20 CALLE1 Miramar
R
Superf Direccin Edificio Nmero Superf2 Edificio2
20 ANDAR1 Salmar 120 15 Pelicanos
25 ANDAR1 Miramar 130 20 Salagua
15 CALLE1 Tablaroca 115 20 Miramar
2.2.3 Secuencias de operaciones del
lgebra relacional
agosto de 2013 Base de Datos ( Unidad II ) 52
Secuencia de operaciones: en muchos casos, para formular una
consulta en lgebra relacional es preciso utilizar varias operaciones,
que se aplican en cierto orden.
Existen dos posibilidades para hacer una secuencia de operaciones:
1. Utilizar una sola expresin del lgebra, por ejemplo:
R:=(T1 T2)[Edificio, Direccin]
2. O bien descomponer la expresin en varios pasos, p. ej.
Paso1:=T1 T2 unin
R := Paso1[Edificio, Direccin] Proyeccin
Ingeniero en Geomtica
27
2.2.4 Extensiones: combinaciones
externas
agosto de 2013 Base de Datos ( Unidad II ) 53
Operacin de combinacin externa: operacin equivalente a las
operaciones de combinacin ya vistas, pero que de hecho permite
combinar los datos de dos relaciones sin que haya prdida de datos
de las relaciones de partida.
Las variantes de combinacin externa pueden ser de los siguientes
tipos:
1. La combinacin externa izquierda entre T1 y T2, T1[C]
I
T3,
conserva en el resultado todas las tuplas de la relacin T1.
2. La combinacin externa derecha entre T1 y T2, T1[C]
D
T2,
conserva en el resultado todas las tuplas de la relacin T2.
3. La combinacin externa plena entre T1 y T2, T1[C]
P
T2, conserva
en el resultado todas las tuplas de T1 y de T2.
2.2.4 Extensiones: combinaciones
externas
agosto de 2013 Base de Datos ( Unidad II ) 54
Asimismo, tambin existen las combinaciones naturales externas y
pueden ser de los siguientes tipos:
1. La combinacin natural externa izquierda entre T1 y T2, T1*
I
T3,
conserva en el resultado todas las tuplas de la relacin T1.
2. La combinacin natural externa derecha entre T1 y T2, T1*
D
T2,
conserva en el resultado todas las tuplas de la relacin T2.
3. La combinacin natural externa plena entre T1 y T2, T1*
P
T2,
conserva en el resultado todas las tuplas de T1 y de T2.
Ingeniero en Geomtica
28
2.2.4 Extensiones: combinaciones
externas
agosto de 2013 Base de Datos ( Unidad II ) 55
Veamos un ejemplo de una combinacin natural derecha
R:=T1 *
D
T2
T1
Superf Direccin Edificio Nmero
20 ANDAR1 Salmar 120
25 ANDAR1 Miramar 130
15 CALLE1 Tablaroca 115
T2
Superf2 Direccin Edificio2
15 ANDAR1 Pelicanos
20 ANDAR2 Salagua
20 CALLE1 Miramar
R
Superf Direccin Edificio Nmero Superf2 Edificio2
20 ANDAR1 Salmar 120 15 Pelicanos
25 ANDAR1 Miramar 130 20 Salagua
Nulo ANDAR2 Nulo Nulo 20 Salagua
15 CALLE1 Tablaroca 115 20 Miramar
RESUMEN
agosto de 2013 Base de Datos ( Unidad II ) 56
1. Aspectos ms relevantes del modelo relacional que hemos visto
son los siguientes:
En lo que respecta a la estructura de los datos:
Consiste en un conjunto de relaciones.
Una relacin permite almacenar datos relacionados entre s.
La clave primaria de una relacin permite identificar sus datos
Las claves forneas de las relaciones permiten referenciar
claves primarias, y as poder establecer conexiones entre los
datos de las relaciones.
En lo que respecta a la integridad de los datos:
Las claves primarias no pueden tener valores repetidos ni nulos
Los valores de las claves forneas deben existir en la clave
primaria o bien deben ser valores nulos.
Un dominio puede almacenar fechas, cdigos CURP, pero no otro
tipo de informacin que no cumpla con esas caractersticas.
Ingeniero en Geomtica
29
RESUMEN
agosto de 2013 Base de Datos ( Unidad II ) 57
2. El lgebra relacional proporciona un conjunto de operaciones
para manipular relaciones. Estas operaciones se pueden clasificar
de la forma siguiente:
Operaciones conjuntistas: unin, interseccin, diferencia y
producto cartesiano.
Operaciones especficamente relacionales: seleccin, proyeccin
y combinacin.
Las operaciones del lgebra relacional pueden formar secuencias que
permiten resolver consultas complejas.
Tareas/evaluacin
agosto de 2013 Base de Datos ( Unidad II ) 58
1ra Parcial:
N1. Objetivos de los Sistemas de Gestin de Bases de Datos.
N2. Generar un cuestionario con respuestas del tema 1 (mnimo
30 preguntas). Basarse en Camps Par Introduccin a las bases
de datos.
N3. Generar un cuestionario con respuestas del tema 2 (mnimo
30 preguntas). Basarse en Costal Costa El modelo relacional y el
lgebra relacional.
N4. Resolver los ejercicios de lgebra Relacional propuestos en
documento entregado por profesor.

Potrebbero piacerti anche