Está en la página 1de 14

Curso 2005/2006

2 HND ESI

INF-31 Base de datos Avanzadas

Tema 3. La normalizacin de las Bases de Datos. lgebra relacional.

La normalizacin de las
bases de datos. lgebra
relacional.

3.1
Teora de la normalizacin............................................................................... 2
3.2
Nocin intuitiva de las formas normales .......................................................... 4
3.3
Dependencias funcionales............................................................................... 5
3.3.1
Dependencia funcional completa.............................................................. 5
3.3.2
Dependencia funcional transitiva .............................................................. 6
3.3.3
Definicin formal de las tres primeras formas normales ........................... 6
3.4
Diagramas de dependencia funcional. Ejemplo de normalizacin................... 7
3.5
lgebra Relacional......................................................................................... 10
3.5.1
Operadores primitivos............................................................................. 11
3.5.2
Operadores Derivados............................................................................ 13
3.5.3
Operacin de asignacin y renombrado de atributos ............................. 14

-1ESNE Escuela Superior de Negocios y Estudios Internacionales


Camino Pardo de Vega/Jos ngel de Sande

Curso 2005/2006

2 HND ESI
Tema 3. La normalizacin de las Bases de Datos. lgebra relacional.

INF-31 Base de datos Avanzadas

3.1

TEORA DE LA NORMALIZACIN

Cuando se disea una base de datos mediante el modelo relacional, al igual que ocurre en
otros modelos de datos, tenemos distintas alternativas, es decir, podemos obtener diferentes
esquemas relacionales y no todos son equivalentes, ya que algunos van a representar la
realidad mejor que otros.
Es necesario conocer qu propiedades debe tener un esquema relacional para
representar adecuadamente una realidad y cules son los problemas que se pueden derivar de
un diseo inadecuado.
La teora de la Normalizacin es un mtodo objetivo y riguroso que se aplica en el
diseo de bases de datos relacionales.
Cuando estudiamos la estructura del modelo relacional, nos dimos cuenta que la base
de datos puede representarse por medio de un conjunto de objetos (dominios y relaciones) y
de un conjunto de reglas de integridad.
El esquema relacional puede obtenerse de dos formas distintas:


Directamente a partir de la observacin de nuestro universo del discurso, en donde


especificamos conjuntos de atributos, relaciones y restricciones que corresponden a los
observados en el mundo real.

Realizando el proceso de diseo en dos fases, primero el diseo conceptual (E/R)


obteniendo el esquema conceptual y posteriormente transformar ste a un esquema
relacional, siguiendo algunas reglas generales, que fueron dadas anteriormente.

Algunos problemas que se pueden presentar son:




Incapacidad para almacenar ciertos hechos

Redundancias y por tanto, posibilidad de incoherencias

Ambigedades

Prdida de informacin (aparicin de tuplas espreas)

Prdida de dependencias funcionales, es decir, ciertas restricciones de integridad que dan


lugar a interdependencias entre los datos.

Aparicin en la BD de estados no vlidos, es decir, anomalas de insercin, borrado y


modificacin.

En conclusin el esquema relacional obtenido debe ser analizado para comprobar que no
presenta los problemas anteriores.
Analicemos la siguiente relacin: ESCRIBE
AUTOR

NACIONALIDAD COD_LIBRO TITULO EDITORIAL AO

Date, C.

Norteamericana

98987

Database

Addison

1990

Date, C.

Norteamericana

97777

SQL Stan

Addison, W.

1986

Date, C.

Norteamericana

98987

Guide for

Addison, W.

1988

-2ESNE Escuela Superior de Negocios y Estudios Internacionales


Camino Pardo de Vega/Jos ngel de Sande

Curso 2005/2006

2 HND ESI
Tema 3. La normalizacin de las Bases de Datos. lgebra relacional.

INF-31 Base de datos Avanzadas

Codd,E.

Norteamericana

7890

Relational

Addison,W.

1990

Gardarin

Francesa

12345

Basi Dati

Paraninfo

1986

Gardarin

Francesa

67890

Comp BD

Eyrolles

1984

Valduriez

Francesa

67890

Comp BD

Eyrolles

1984

Kim,W.

Norteamericana

11223

BD OO

ACM

1989

Lochovsky

Canadiense

11223

BD OO

ACM

1989

Esta relacin almacena datos de autores y de libros.


Algunos problemas son:


Redundancia, ya que la nacionalidad del autor se repite por cada ocurrencia del mismo.
Lo mismo sucede cuando un libro tiene mas de un autor, se repite la editorial y el ao de
publicacin.

Anomalas de modificacin, es fcil cambiar el nombre de una editorial en una tupla sin
modificar el resto de las que corresponden al mismo libro, lo que da lugar a incoherencias.

Anomalas de insercin, ya que si queremos introducir informacin de algn autor, del


que no hubiera ningn libro en la base datos, no sera posible, ya que cod_libro es parte de
la clave primaria de la relacin (regla de integridad de la entidad). La insercin de un
libro, que tiene dos autores obliga a insertar dos tuplas en la relacin.

Anomalas de borrado, ya que si queremos eliminar un cierto libro, deberamos perder los
datos de su autor y viceversa.

En los casos anteriores, se deja en manos del usuario manejar la integridad de la base de
datos. Lo anterior sucede pues no se cumple un hecho bsico de todo diseo:
"hechos distintos, deben almacenarse en objetos distintos"
Una forma de evitar este tipo de problemas consiste en seguir la metodologa
propuesta en el curso, es decir, un riguroso diseo conceptual y un traspaso de ste al modelo
relacional. Sin embargo, ante posibles dudas respecto a si un esquema relacional est correcto,
aplicaremos a dicho esquema un mtodo formal de anlisis, que permita analizar errores y
generar esquemas correctos. Esta es la teora de la normalizacin.
En el ejemplo anterior, el conjunto de las siguientes relaciones no presenta estos
problemas:
LIBRO( cod_libro, titulo, editorial, ao )
AUTOR( nombre, nacionalidad )
ESCRIBE( cod_libro, nombre )
La normalizacin introduce una tcnica formal para disear bases de datos
relacionales, y permite mecanizar parte del proceso al disponer de algoritmos de
normalizacin.
-3ESNE Escuela Superior de Negocios y Estudios Internacionales
Camino Pardo de Vega/Jos ngel de Sande

Curso 2005/2006

2 HND ESI

INF-31 Base de datos Avanzadas

Tema 3. La normalizacin de las Bases de Datos. lgebra relacional.

Una observacin importante, es que las anomalas antes descritas se producen en


procesos de actualizacin y no en procesos de consulta. La normalizacin penaliza las
consultas, al disminuir la eficiencia, ya que la normalizacin aumenta el nmero de relaciones
presentes en la base de datos, por lo que una determinada consulta puede llevar consigo el
acceso a varias tablas, lo que aumenta el costo de sta.
3.2

NOCIN INTUITIVA DE LAS FORMAS NORMALES

La normalizacin tiene como objetivo obtener esquemas relacionales que cumplan


determinadas condiciones, a travs de las formas normales.
Primera Forma Normal (1FN) fue introducida por Codd, en su primer trabajo. Es
una restriccin inherente al modelo relacional por lo que su cumplimiento es obligatorio.
Consiste en la prohibicin de que en una relacin existan grupos repetitivos, es decir, un
atributo no puede tomar ms de un valor del dominio subyacente.
Segunda Forma Normal (2FN), fue introducida por Codd. Una relacin est en 2FN,
si adems de estar en 1FN, todos los atributos que no forman parte de ninguna clave candidata
suministran informacin acerca de la clave completa.
Para la relacin PRESTAMO( num_socio, nombre_socio, cod_libro, fec_prest,
editorial, pas ) las claves candidatas son:
(num_socio, cod_libro) y (nombre_socio, cod_libro)
Se puede observar que ciertos atributos que no forman parte de las claves candidatas,
tal como editorial, constituye informacin acerca del libro, pero no acerca de la clave
completa. Luego, la relacin prstamo no se encuentra en 2FN.
La solucin es descomponer esta relacin en las siguientes:
PRESTAMO1( num_socio, nombre_socio, cod_libro, fec_prest )
LIBRO( cod_libro, editorial, pas )
En la relacin PRESTAMO1, el nico atributo que no forma parte de las claves
candidatas es fec_prest, pero suministra informacin acerca de la clave completa. Por lo que
est en 2FN.
La relacin LIBRO, la clave es cod_libro, y los dos atributos: editorial y pas
suministran informacin de la clave completa. Por lo tanto, est en 2FN.
OBS: Una relacin que est formada por un nico atributo esta en 2 FN.
Tercera Forma Normal (3FN), propuesta por Codd. Una relacin est en 3FN, si
adems de estar en 2FN, los atributos que no forman parte de ninguna clave candidata
facilitan informacin slo acerca de la(s) clave(s) y no acerca de otros atributos.
En la relacin PRESTAMO1, el atributo fec_prest facilita informacin acerca de las
claves, ya que no existen ms atributos. Por lo que est en 3FN.
En la relacin LIBRO, el atributo pas entrega informacin acerca de la editorial que
publica el libro, por lo que no est en 3FN.
La solucin es descomponerla en:
LIBRO1( cod_libro, editorial )
EDITORIAL( editorial, pas ),
que estn en 3FN, ya que todo atributo no clave facilita informacin acerca de la clave.
-4ESNE Escuela Superior de Negocios y Estudios Internacionales
Camino Pardo de Vega/Jos ngel de Sande

Curso 2005/2006

2 HND ESI

INF-31 Base de datos Avanzadas

Tema 3. La normalizacin de las Bases de Datos. lgebra relacional.

Forma Normal de Boycce y Codd (FNBC). La relacin PRESTAMO1, que est en


3FN, todava presenta anomalas, ya que num_socio y nombre_socio, se repiten
innecesariamente por cada cod_libro. Una relacin est en FNBC si y solo si, el conocimiento
de las claves candidatas permite averiguar todas las interrelaciones existentes entre los datos
de la relacin, o lo que es igual, las claves candidatas son los nicos descriptores sobre los
que se facilita informacin por cualquier otro atributo.
En la relacin PRESTAMO1, num_socio es informacin acerca de nombre_socio y
viceversa. Ninguno de estos atributos son clave (aunque formen parte de la clave). Para
solucionarlo la descomponemos:
SOCIO( num_socio, nombre_socio )
PRESTAMO2( num_socio, cod_libro, fec_prest ), que estn en FNBC.
Hasta ahora nuestro esquema relacional est compuesto por las siguientes relaciones en
FNBC:
LIBRO1( cod_libro, editorial )
EDITORIAL( editorial, pas )
SOCIO( num_socio, nombre_socio )
PRESTAMO2( num_socio, cod_libro, fec_prest )
3.3

DEPENDENCIAS FUNCIONALES

Sea el esquema de relacin R definido sobre el conjunto de atributos A y sean X e Y


subconjuntos de A llamados descriptores. Se dice que Y depende funcionalmente de X o que
X determina o implica a Y, que se representa por X Y, si solo si, cada valor de X tiene
asociado en todo momento un nico valor de Y.
ej: cod_libro titulo, el cdigo del libro determina el titulo. El cod_libro es el
implicante y titulo es el implicado. Siempre el implicado es un hecho (una informacin)
acerca del implicante.
OBS1: la afirmacin cod_libro determina titulo NO significa que a partir de cod_libro
podamos conocer el titulo. Es decir, para un esquema R, si tenemos la dependencia funcional
X Y, dado un valor de X no podemos en general conocer el valor de Y. Solo nos
limitaremos a firmar que para dos tuplas de cualquier extensin de R que tengan el mismo
valor de X, el valor de Y tambin ser igual en ambas.
OBS2: Las dependencias son predicados o restricciones sobre cualquier extensin
vlida del esquema de relacin, por lo que observar una determinada extensin (datos) no
puede llevarnos a afirmar la existencia de una dependencia funcional.
3.3.1 Dependencia funcional completa
Si el descriptor X es compuesto, es decir, X(X1, X2), se dice que Y tiene dependencia
funcional completa de X, si depende funcionalmente de X, pero no depende de ningn
subconjunto del mismo, esto es:
XY
X1 | Y
X2 | Y. Se representa X Y.

-5ESNE Escuela Superior de Negocios y Estudios Internacionales


Camino Pardo de Vega/Jos ngel de Sande

Curso 2005/2006

2 HND ESI

INF-31 Base de datos Avanzadas

Tema 3. La normalizacin de las Bases de Datos. lgebra relacional.

X Y si y solo si NO X X / X Y.
Ejemplos:
La relacin PUBLICA( articulo, revista, numero, pagina ), que representa la pagina
inicial en la que comienza un articulo en una revista. Un mismo articulo puede aparecer
publicado en distintas revistas y en cada una de ellas, en paginas distintas y una revista
publica varios artculos, se tiene:
articulo, revista, numero pagina
articulo | pagina
revista | pagina
numero | pagina
3.3.2 Dependencia funcional transitiva
Sea la relacin R( X,Y,Z ), en la que existen las siguientes dependencias funcionales:
X Y, Y Z y Y | X, se dice que Z tiene dependencia transitiva respecto a X, a travs
de Y.
ej: LIBRO_ED( codlibro, editorial, pas )
La dependencia entre codlibro y pas es transitiva, a travs de editorial. Intuitivamente
se interpreta como que PAIS es una informacin del libro, pero indirectamente, ya que es una
informacin de EDITORIAL y esta a su vez de LIBRO.
3.3.3 Definicin formal de las tres primeras formas normales
Primera Forma Normal:
No tiene grupos repetitivos, es decir, un atributo slo puede tomar un nico valor de un
dominio simple.
Segunda Forma Normal:


Est en 1FN

Cada atributo no principal tiene dependencia funcional completa respecto de cada una de
las claves.

La relacin PUBLICA2( articulo, revista, numero, pagina, editorial ) que refleja en qu


numero de qu revista se publica un artculo, en qu pagina comienza y cul es la editorial.
Tenemos las siguientes dependencias:
articulo, revista, numero pagina
revista editorial
clave:(articulo, revista, numero)
Esta relacin no esta en 2FN, ya que editorial depende de la revista y tiene
redundancia, pues se repite la editorial para cada articulo que se publica en una revista.
Tercera Forma Normal:


Est en 2FN

Ningn atributo no principal depende transitivamente de ninguna clave de la relacin.


-6ESNE Escuela Superior de Negocios y Estudios Internacionales
Camino Pardo de Vega/Jos ngel de Sande

Curso 2005/2006

2 HND ESI
Tema 3. La normalizacin de las Bases de Datos. lgebra relacional.

INF-31 Base de datos Avanzadas

3.4

DIAGRAMAS
DE
NORMALIZACIN.

DEPENDENCIA

FUNCIONAL.

EJEMPLO

DE

Se trata de normalizar hasta la 3FN una base de datos de una academia que contenga
informacin sobre Cursos, Profesores, Libros, Editorial de los libros, Ciudad de la editorial,
Telfono de los profesores y aulas. Se imponen ahora las siguientes (aunque un tanto
extraas) condiciones:
-

Cada curso es impartido siempre por un grupo bien definido de profesores.

Cada curso tiene un grupo bien definido de libros (se dan todos ellos).

Cada curso impartido por un profesor con un cierto libro se realizar en un aula
distinta.

Para plasmar todas estas condiciones, se incorpora a continuacin una hipottica tabla con
los tipos de datos anteriormente definidos.

Curso
Fsica
Fsica
Fsica
Fsica
Lengua
Lengua
Lengua
Lengua
Lengua
Lengua

Profesor
Luis
Luis
Paco
Paco
Pepe
Pepe
Ana
Ana
Juan
Juan

Libro
A
B
A
B
C
D
C
D
C
D

Aula
1
2
3
4
5
6
7
8
9
10

Editorial
Ciencia
Saber
Ciencia
Saber
Saber
Futuro
Saber
Futuro
Saber
Futuro

Ciudad
Madrid
Sevilla
Madrid
Sevilla
Sevilla
Barcelona
Sevilla
Barcelona
Sevilla
Barcelona

Telfono
212121
212121
434343
434343
545454
545454
323232
323232
121212
121212

Teniendo en cuenta el enunciado del problema y los datos de la tabla anterior, se puede
trazar el siguiente diagrama de dependencias funcionales:

Para normalizar hasta la tercera forma normal debemos seguir los siguientes pasos:
a. Determinar cuales son las claves de la relacin.
b. Determinar cual de estas claves funcionar como clave primaria.
En nuestro ejemplo, la clave primaria sera (Curso, Profesor, Libro)
c. Mirar si la relacin se encuentra en 1FN.
En nuestro ejemplo, podemos afirmar que la relacin se encuentra en primera forma
normal ya que los dominios son atmicos.
d. Mirar si la relacin se encuentra en 2FN.
-7ESNE Escuela Superior de Negocios y Estudios Internacionales
Camino Pardo de Vega/Jos ngel de Sande

Curso 2005/2006

2 HND ESI

INF-31 Base de datos Avanzadas

Tema 3. La normalizacin de las Bases de Datos. lgebra relacional.

En nuestro ejemplo, la relacin no se encuentra en segunda forma normal ya existen


dependencias funcionales no completas de la clave primaria
Si una relacin no se encuentra en 2FN se puede aplicar el siguiente teorema de manera que,
al descomponer la relacin en 2 al menos una de ellas se encuentra en 2FN:
Teorema I

Sea una relacin R(A,B,C,D) con clave primaria (A,B) y tal que RA -> RD, entonces la
relacin R puede descomponerse como
R1(A,D)
R2(A,B,C)
En el diagrama de dependencias funcionales, se muestra claramente que existen dos
dependencias no completas de la clave. Es decir, existen dos atributos que no dependen de la
clave completa, sino de parte de ella.

Aplicaremos el Teorema I a las dependencias no completas del ejemplo.


R=(Curso, Profesor, Libro, Aula, Editorial, Ciudad, Telfono)
Vamos a deshacer la dependencia no completa entre telfono y profesor con ayuda del
Teorema I:
R1= (Profesor, Telfono)
R2=(Curso, Profesor,Libro,Aula,Editorial,Ciudad).

-8ESNE Escuela Superior de Negocios y Estudios Internacionales


Camino Pardo de Vega/Jos ngel de Sande

Curso 2005/2006

2 HND ESI

INF-31 Base de datos Avanzadas

Tema 3. La normalizacin de las Bases de Datos. lgebra relacional.

Vamos a deshacer la dependencia no completa R2 entre libro y editorial aplicando del


Teorema I:
R1= (Profesor, Telfono)
R3= (Libro, Editorial , Ciudad)
R4=(Curso, Profesor, Libro, Aula)

Ahora podemos afirmar que la relacin R1, R3 y R4 se encuentran en 2FN. Las


relaciones R1 y R4, se encuentran en 3FN, ya que las dependencias funcionales que existen
no son transitivas.
Sin embargo la relacin R3 no se encuentra en 3FN, ya que existen dependencias
funcionales transitivas, es decir, que existen atributos que dependen de otros atributos que no
son clave.

Si una relacin no se encuentra en 3FN se puede aplicar el siguiente teorema de


manera que, al descomponer la relacin en 2 al menos una de ellas se encuentra en 3FN:
Teorema II

Sea una relacin R(A,B,C) con clave primaria (A) y tal que RB -> RC, entonces la relacin R
puede descomponerse como:
R1(A,B)
R2(B,C)
Aplicaremos el Teorema II para deshacer la dependencia transitiva en R3.
R5= (Libro, Editorial)
R6=(Editorial, Ciudad)
Ahora se puede afirmar que las relaciones R1, R4, R5 y R6 se encuentran en 3FN.
-9ESNE Escuela Superior de Negocios y Estudios Internacionales
Camino Pardo de Vega/Jos ngel de Sande

Curso 2005/2006

2 HND ESI

INF-31 Base de datos Avanzadas

Tema 3. La normalizacin de las Bases de Datos. lgebra relacional.

El diagrama de dependencias funcionales quedar de la siguiente manera:

Las relaciones sern las siguientes:


R1= (Profesor, Telfono)
R4=(Curso, Profesor, Libro, Aula)
R5= (Libro, Editorial)
R6=(Editorial, Ciudad)
3.5

LGEBRA RELACIONAL.

El Modelo relacional, como todo modelo de datos, lleva asociado a su parte esttica
(estructura y restricciones) una dinmica que permite la transformacin entre estados de la
base de datos. Esta transformacin de un estado origen a un estado objetivo se realiza
aplicando un conjunto de operadores, mediante los cuales se llevan a cabo las siguientes
operaciones:
-

insercin de tuplas

borrado de tuplas

modificacin de tuplas.

consulta.

La dinmica del modelo relaciona acta sobre un conjunto de tuplas y se expresa mediante
lenguajes de manipulacin relacionales que asocian una sintaxis concreta a las operaciones.
La dinmica del modelo relacional, en lo que al lgebra se refiere, la constituye una coleccin
de operadores de alto nivel que, aplicados a las relaciones, dan como resultado nuevas
relaciones. Originalmente Codd defini ocho operadores para el lgebra relacional, divididos
en dos grupos de cuatro:
-

Los operadores tradiciones de conjuntos: unin, interseccin, diferencia y producto


cartesiano.

Los operadores relacionales especiales: restriccin, proyeccin, combinacin y


divisin.

Tambin los operadores pueden dividirse en:

- 10 ESNE Escuela Superior de Negocios y Estudios Internacionales


Camino Pardo de Vega/Jos ngel de Sande

Curso 2005/2006

2 HND ESI
Tema 3. La normalizacin de las Bases de Datos. lgebra relacional.

INF-31 Base de datos Avanzadas

Operadores primitivos que son los operadores esenciales que no pueden obtenerse de
otros.

Operadores derivados que se pueden obtener aplicando varios de los operadores


primitivos.

Otra posible clasificacin, atendiendo al nmero de operandos de cada operador:


-

Unarios, si el operador tiene una nica relacin como operando.

Binarios, si el operador tiene dos relaciones como operando

3.5.1 Operadores primitivos

Los operadores unarios son la proyeccin y restriccin. Los operadores binarios son la Unin,
Diferencia y Producto cartesiano.
3.5.1.1 Seleccin o restriccin

La seleccin, tambin llamada restriccin, extrae las tuplas de una relacin que satisfaga una
condicin especfica.
Un ejemplo de la operacin de restriccin sera el siguiente:
AUTOR
Nombre
Date C.J.
Saltor F.
Ceri, S
Ramos, I
Sanchis, J
Jonason, J

Nacionalidad
Norteamericana
Espaola
Italiana
Espaola
Espaola
Norteamericana

Institucin
Relational Institute
U.P.C.
Politcnico de Milan
U.P.V
U.P.C.
U.P.C.

nacionalidad = espaola (AUTOR)


Nombre
Saltor F.
Ramos, I
Sanchis, J

Nacionalidad
Espaola
Espaola
Espaola

Institucin
U.P.C.
U.P.V
U.P.C.

La aplicacin consecutiva del operador de seleccin de una relacin pn(pn-1...( p1(R)))


es igual a una nica operacin de restriccin con todos los predicados p1, p2, ... pn unidos por
el operador boleeano Y p1 y p2 ... pn

nacionalidad = espaola Y institucin = U.P.C. (AUTOR)


nacionalidad = espaola ( institucin = U.P.C. (AUTOR))
Nombre
Saltor F.
Sanchis, J

Nacionalidad
Espaola
Espaola

Institucin
U.P.C.
U.P.C.

- 11 ESNE Escuela Superior de Negocios y Estudios Internacionales


Camino Pardo de Vega/Jos ngel de Sande

Curso 2005/2006

2 HND ESI
Tema 3. La normalizacin de las Bases de Datos. lgebra relacional.

INF-31 Base de datos Avanzadas

3.5.1.2 Proyeccin

La proyeccin de una relacin sobre un subconjunto de atributos es una relacin definida


sobre ellos, eliminando las tuplas duplicadas que hubieran podido resultar; es, por tanto un
subconjunto vertical de la relacin a la que se aplica el operador.
nacionalidad (AUTOR)
Nacionalidad
Norteamericana
Italiana
Espaola
3.5.1.3 Unin

Construye una relacin con todas las tuplas que aparezcan en cualquiera de las dos relaciones
especificadas. Para usar este operador es necesario que las dos relaciones especificadas tengan
los mismos atributos definidos sobre los mismos dominios.
R= A

a1
a2
a3
a4

S= A

b1
b2
b2
b4

a1
a2
a5

RS= A

b1
b2
b5

a1
a2
a3
a4
a5

b1
b2
b2
b4
b5

3.5.1.4 Diferencia

Construye una relacin con las tuplas de la primera que no aparecen en la segunda. Para
utilizar este operador es necesario que las dos relaciones especificadas tengan los mismos
atributos definidos sobre los mismos dominios.
R= A

a1
a2
a3
a4

S= A

b1
b2
b2
b4

a1
a2
a5

R -S = A

b1
b2
b5

a3 b2
a4 b4

3.5.1.5 Producto Cartesiano

A partir de dos relaciones especificadas, construye una relacin concatenando cada tupla de la
primera con cada una de las tuplas de la segunda. La relacin resultante est definida sobre la
unin de los atributos de las dos relaciones especificadas.
R= A

a1
a2
a3
a4

b1
b2
b2
b4

S= D

RXS= A

d1
d2

a1
a1
a2
a2
a3
a3
a4
a4

b1
b1
b2
b2
b2
b2
b4
b4

d1
d2
d1
d2
d1
d2
d1
d2

- 12 ESNE Escuela Superior de Negocios y Estudios Internacionales


Camino Pardo de Vega/Jos ngel de Sande

Curso 2005/2006

2 HND ESI
Tema 3. La normalizacin de las Bases de Datos. lgebra relacional.

INF-31 Base de datos Avanzadas

3.5.1.6 Resumen de operadores primitivos


Veamos una representacin grfica de los cincos operadores primitivos del lgebra relacional
Proyeccin
Diferencia (-)
Producto (X)
Unin ( )
Restriccin ()
()
a
b
c

x
y

a
a
b
b
c
c

x
y
x
y
x
y

3.5.2 Operadores Derivados

Los operadores derivados se pueden expresar siempre en funcin de los operadores


primitivos, pero su introduccin se hace a fin de simplificar las consultas.
3.5.2.1 Combinacin o Join (* )

Con esta operacin se obtiene del producto cartesiano de dos tablas cuyas filas cumplen una
condicin determinada. La condicin determinar el criterio de combinacin de ambas tablas.
Se representar del siguiente modo: (Tabla1 * Tabla2) condicin.
R= A

S= A

R*S= A

a
b
c

u
v
w

a
a
b

x
y
z

a
a
b

u
u
v

x
y
z

3.5.2.2 Interseccin

Construye una relacin con aquellas tuplas que aparezcan en las dos relaciones especificadas.
Para usar este operador es necesario que las dos relaciones especificadas tengan los mismos
atributos definidos sobre los mismos dominios. La interseccin se puede definir en funcin de
la unin y la diferencia. Se representa de la siguiente manera: Tabla1 Tabla2
R= A

a1
a2
a3
a4

S= A

b1
b2
b2
b4

a1
a2
a5

b1
b2
b5

RS= A

a1 b1
a2 b2

3.5.2.3 Divisin

La divisin de una relacin R1 (dividendo) por otra R2 (divisor) es una relacin R (cociente)
tal que, al realizarse su combinacin con el divisor, todas las tuplas resultantes se encuentran
en el dividendo.
AUTOR_EDITORIAL
Nombre
Nacionalidad
Date, CJ
Norteamericana
Cervera, J.
Espaola
Saltor, F.
Espaola
Ceri, S.
Italiana

Editorial
Addison
Rama
Paraninfo
Clup

- 13 ESNE Escuela Superior de Negocios y Estudios Internacionales


Camino Pardo de Vega/Jos ngel de Sande

EDITORIAL
Editorial
Adisson
Rama

Curso 2005/2006

2 HND ESI
Tema 3. La normalizacin de las Bases de Datos. lgebra relacional.

INF-31 Base de datos Avanzadas

Costilla, C.
Codd, E.
Cervera, J.

Espaola
Diaz de Santos
Norteamericana Prentice may
Espaola
Addison

AUTOR_EDITORIAL : EDITORIAL
Nombre
Nacionalidad
Cervera, J.
Espaola
3.5.3 Operacin de asignacin y renombrado de atributos

Mediante la operacin de asignacin se puede llevar a cabo el renombrado de atributos. Esta


operacin se utiliza para almacenar el resultado de una consulta en una nueva relacin o para
denominar resultados intermedios cuando se desea dividir una nica operacin compleja en
una secuencia de operaciones ms simples; tambin se emplea para asignar un nuevo nombre
a una relacin existente.
El smbolo con el que se suele representar esta operacin es una flecha que seala hacia la
nueva relacin a la que se le asignara el resultado de la operacin:
RELACION_NUEVA O ( R )

- 14 ESNE Escuela Superior de Negocios y Estudios Internacionales


Camino Pardo de Vega/Jos ngel de Sande

También podría gustarte