Professional Documents
Culture Documents
NumOficina
Poblacin
Telfono
Fax
O5
Enmedio, 8
Calle
Castelln
9640124
9642130
O7
Moreno, s/n
Castelln
9642576
9642567
O3
San Miguel, 1
Villarreal
9645225
9645025
O4
Bermdez, 23
Castelln
9642444
9642440
Las columnas
son los campos
o atributos de la
relacin.
Figura N 3.1 Relacin OFICINA de la base de datos Inmobiliaria, indicando sus partes.
Fuente: El autor, 2009.
El modelo relacional, como todo modelo de datos, tiene que ver con tres aspectos de los
datos:
Estructura de datos.
Integridad de datos.
Manejo de datos.
Descripcin
Nmero de la oficina
Nombre de la calle donde se ubica la oficina
Nombre de la poblaciones donde se ubica la oficina
Nmero de telfono de la oficina
Nmero de fax de la oficina
Definicin
3 caracteres
25 caracteres
25 caracteres
11 caracteres
11 caracteres
de meses que dura el alquiler, pero s tiene sentido multiplicar los valores de ambos dominios
para averiguar el importe total al que asciende el alquiler. Los SMBD relacionales no ofrecen
un soporte completo de los dominios ya que su implementacin es extremadamente compleja.
Una tupla es una fila de una relacin. Los elementos de una relacin son las tuplas o
filas de la tabla. En la relacin OFICINA,, figura 3.1, existen cuatro tuplas, cada una tiene seis
valores, uno para cada atributo. Las tuplas de una relacin no siguen ningn orden.
El grado de una relacin es el nmero de campos que contiene
contiene. La relacin OFICINA
de la figura 3.1 es de gra
grado
do cinco porque tiene cinco atributos. Esto quiere decir que cada fila
de la tabla es una tupla con cinco valores. El grado de una relacin no cambia con frecuencia.
La cardinalidad de una relacin es el nmero de tuplas que contiene. Ya que en las
relaciones se van insertando y borrando tuplas a menudo, la cardinalidad de las mismas vara
constantemente. La relacin OFICINA, figura 3.1, es de cardinalidad cuatro.
Cuando una clave candidata est formada por ms de un atributo, se dice que es una
clave compuesta.. Una relacin puede tener varias claves candidatas. Por ejemplo, en la
relacin OFICINA de la figura 3.1, el atributo Poblacin no es una clave candidata ya que
puede haber varias oficinas en una misma poblacin. Sin embargo, ya que la empresa asigna
un cdigo nico a cada oficina, el atributo NumOficina s es una clave candidata de la relacin
OFICINA. Tambin son claves candidatas de esta relacin los atributos Telfono y Fax.
En una base de datos de Inmobiliaria hay una relacin denominada VISITA, la cual se
muestra a continuacin, figura 3.3, que contiene informacin sobre las visitas que los clientes
han realizado a los inmuebles. Esta relacin contiene el nmero del cliente Qnum, el nmero
del inmueble Inum, la fecha de la visita Fecha, ID del empleado que efectu la visita
IDEmpleado y un Comentario opcional. Para un determinado nmero de cliente Qnum, se
pueden encontrar varias visitas a varios inmuebles. Del mismo modo, dado un nmero de
inmueble Inum, puede que haya varios clientes que lo hayan visitado. Por lo tanto, el atributo
Qnum no es una clave candidata para la relacin VISITA, como tampoco lo es el atributo
Inum. Sin embargo, la combinacin de los dos atributos s identifica a una sola tupla, por lo
que los dos juntos son una clave candidata de VISITA. Si se desea considerar la posibilidad
de que un mismo cliente pueda visitar un mismo inmueble en varias ocasiones, habra que
incluir el atributo Fecha para identificar las tuplas de modo nico (aunque ste no es el caso
de la empresa Inmobiliaria del ejemplo).
Qnum
Inum
Fecha
IDEmpleado
Comentario
Q76
IA14
12/03/1999
1182
Q74
IG40
30/11/1999
1285
Q62
IG36
25/10/1998
1182
Grandes espacios
Q74
IG36
14/08/1998
5682
Muy hermosa
El nico modo de identificar las claves candidatas es conociendo el significado real de los
atributos, ya que esto permite saber si es posible que aparezcan duplicados. Slo usando esta
informacin semntica se puede saber con certeza si un conjunto de atributos forman una
clave candidata.
La clave primaria de una relacin es aquella clave candidata que se escoge para
identificar sus tuplas de modo nico. Ya que una relacin no tiene tuplas duplicadas,
siempre hay una clave candidata y, por lo tanto, la relacin siempre tiene clave
primaria. En el peor caso, la clave primaria estar formada por todos los atributos de la
relacin, pero normalmente habr un pequeo subconjunto de los atributos que haga
esta funcin.
Las claves candidatas que no son escogidas como clave primaria son denominadas
claves alternativas. Por ejemplo, la clave primaria de la relacin OFICINA, figura 3.1,
es el atributo NumOficina, siendo Telfono y Fax dos claves alternativas. En la relacin
VISITA, figura 3.3, slo hay una clave candidata formada por los atributos Qnum e
Inum, por lo que esta clave candidata es la clave primaria.
VISITA, figura 3.3, es una clave ajena o fornea cuyos valores hacen referencia al atributo
IDEmpleado, clave primaria de la relacin EMPLEADO, figura 3.4.
IDEmplea
do
Nombre
Apellido
Cargo
Salario
1182
Pedro
Prez
Asistente
958.00
1285
Juan
Lpez
Jefe de Inmuebles
2458,45
2586
Mara
Prez
Administrador
3586,12
5682
Ana
Marchan
Asistente
1024,00
En el mbito de las bases de datos relacionales, una clave fornea es una restriccin
referencial entre dos relaciones. La clave fornea establece que un grupo de atributos, en una
relacin, hace referencia a otro grupo de atributos, en otra. La primera relacin se denomina
referenciante (relacin EMPLEADO), mientras que la segunda, referenciada (relacin VISITA).
Los atributos que son clave fornea en la relacin referenciante deben ser clave primaria
o clave candidata en la relacin referenciada. Implementar una clave fornea establece que
ciertos atributos de la relacin referenciante slo podrn admitir elementos que existan
previamente en determinados atributos de la relacin referenciada.
La clave fornea es, entonces, una caracterstica importante en una base de datos. Su
utilizacin impropia puede generar problemas. Su principal objetivo es mantener la integridad
de la informacin almacenada.
Una base de datos relacional es un conjunto de relaciones normalizadas. Para
representar el esquema de una base de datos relacional se debe dar el nombre de sus
relaciones, los atributos de stas, los dominios sobre los que se definen estos
atributos, las claves primarias y las claves ajenas.
3.4 Integridad de Datos.
Una vez definida la estructura de datos del modelo relacional, se pasa a estudiar las
reglas de integridad que los datos almacenados en dicha estructura deben cumplir para
garantizar que son correctos.
Al definir cada atributo sobre un dominio se impone una restriccin sobre el conjunto de
valores permitidos para cada atributo. A este tipo de restricciones se les denomina
restricciones de dominios. Hay adems dos reglas de integridad muy importantes que son
restricciones que se deben cumplir en todas las bases de datos relacionales y en todos sus
estados o instancias (las reglas se deben cumplir todo el tiempo). Estas reglas son la regla de
integridad de entidades y la regla de integridad referencial.
Una base de datos que no cumpla con alguna de estas dos reglas, se dice que la base
de datos est en estado ilegal; si cumple con ambas, estar en estado legal. Antes de definir
ambas reglas, es preciso conocer el concepto de valor nulo.
Qu es un valor Nulo?
3.4.1
La primera regla de integridad se aplica a las claves primarias de las relaciones base:
ninguno de los atributos que componen la clave primaria puede ser nulo.
Por definicin, una clave primaria es un identificador irreducible que se utiliza para
identificar de modo nico las tuplas. Irreducible significa que ningn subconjunto de la clave
primaria sirve para identificar las tuplas de modo nico. Si se permite que parte de la clave
primaria sea nula, se est diciendo que no todos sus atributos son necesarios para distinguir
las tuplas, con lo que se contradice la irreducibilidad.
Ntese que esta regla slo se aplica a las relaciones base y a las claves primarias, no a
las claves alternativas.
Regla de los nulos: Tiene sentido que la clave ajena acepte nulos?
Regla de borrado: Qu ocurre si se intenta borrar la tupla referenciada por la clave
ajena?
o Restringir: no se permite borrar la tupla referenciada.
o Propagar: se borra la tupla referenciada y se propaga el borrado a las tuplas
que la referencian mediante la clave ajena.
o Anular: se borra la tupla referenciada y las tuplas que la referenciaban ponen a
nulo la clave ajena (slo si acepta nulos).
Regla de modificacin: Qu ocurre si se intenta modificar el valor de la clave primaria
de la tupla referenciada por la clave ajena?
o Restringir: no se permite modificar el valor de la clave primaria de la tupla
referenciada.
3.5.1 Vistas
Permiten que los usuarios accedan a los datos en el formato que ellos desean o
necesitan, de modo que los mismos datos pueden ser vistos con formatos distintos por
distintos usuarios.
Se pueden simplificar operaciones sobre las relaciones base que son complejas. Por
ejemplo, se puede definir una vista como la concatenacin de dos relaciones. El
usuario puede hacer restricciones y proyecciones sobre la vista, que el SMBD
traducir en las operaciones equivalentes sobre la concatenacin.
Se puede utilizar una vista para ofrecer un esquema externo a un usuario de modo que
ste lo encuentre familiar. Por ejemplo:
Un usuario puede necesitar los datos de los Empleados junto con los de las Visitas.
Esta vista se crea haciendo una concatenacin de las relaciones VISITA y
EMPLEADO, y proyectando sobre los atributos que se desee mantener, ver figura
siguiente.
Qnum
Q76
Q74
Q62
Q74
Inum
IA14
IG40
IG36
IG36
IDEmpleado
1182
1285
1182
5682
Nombre
Pedro
Juan
Pedro
Ana
Apellido
Prez
Lpez
Prez
Marchan
Comentario
Muy amplia y bien ubicada
Falta pintura a las paredes
Grandes espacios
Muy hermosa
Tabla N 3.4 Vista de las relaciones EMPLEADO y VISITA de la base de datos Inmobiliaria.
Fuente: El autor, 2009.
Otro usuario puede que necesite ver los datos de los empleados sin ver el salario.
Para este usuario se realiza una proyeccin para crear una vista sin el atributo salario.
IDEmpleado
1182
1285
2586
5682
Nombre
Pedro
Juan
Mara
Ana
Apellido
Prez
Lpez
Prez
Marchan
Cargo
Asistente
Jefe de Inmuebles
Administrador
Asistente
Los atributos se pueden renombrar, de modo que cada usuario los vea del modo en
que est acostumbrado. Tambin se puede cambiar el orden en que se visualizan las
columnas.
IDEmpleado
1182
1285
2586
5682
ApellidoEmpleado
Prez
Lpez
Prez
Marchan
NombreEmpleado
Pedro
Juan
Mara
Ana
CargoActual
Asistente
Jefe de Inmuebles
Administrador
Asistente
Inum
Fecha
IDEmpleado
IG40
IG36
30/11/1999
14/08/1998
1285
5682
Comentario
Falta pintura a las paredes
Muy hermosa
Como se pudo observar, las vistas proporcionan independencia de datos a nivel lgico,
que tambin se da cuando se reorganiza el nivel conceptual. Si se aade un atributo a una
relacin, los usuarios no se percatan de su existencia si sus vistas no lo incluyen. Si una
relacin existente se reorganiza o se divide en varias relaciones, se pueden crear vistas para
que los usuarios la sigan viendo como al principio.
Cuando se actualiza una relacin base, el cambio se refleja automticamente en todas
las vistas que la referencian. Del mismo modo, si se actualiza una vista, las relaciones base de
las que se deriva deberan reflejar el cambio. Sin embargo, hay algunas restricciones respecto
a los tipos de modificaciones que se pueden realizar sobre las vistas. A continuacin, se
resumen las condiciones bajo las cuales la mayora de los sistemas determinan si se permite
realizar una actualizacin:
Se permiten las actualizaciones de vistas que se definen mediante una consulta simple
sobre una sola relacin base y que contienen la clave primaria de la relacin base.
10
Prstamo
Estudiante
Libro
Esta
Prstamo
Realiza
Estudiante
Figura N 3.2 Sustitucin de una relacin mucho a mucho por una entidad dbil.
Fuente: El autor, 2009.
2. Eliminar las relaciones ternarias (ver figura 3.3a), sustituyendo cada una de ellas por una
nueva entidad intermedia (dbil) que se relaciona con cada una de las entidades originales,
ver figura 3.3b. La cardinalidad de estas nuevas relaciones binarias depender de su
significado. Ejemplo en la siguiente figura:
Cliente
Presta
Consultor
a)
Servicio
Cliente
Consultor
Servicio
Cliente
Consultor
Servicio
b) Entidad dbil con tres relaciones uno a mucho. Faltan los atributos.
Figura N 3.3 Sustitucin de una relacin ternaria por una entidad dbil.
Fuente: El autor, 2009.
3. Eliminar las relaciones recursivas (ver figura 3.4a), sustituyendo cada una de ellas por
una nueva entidad (dbil) y una relacin binarias con la entidad original. La cardinalidad de
estas relaciones depender de su significado. Ejemplo figura siguiente:
Empleado
Supervisa
Supervisor
11
Supervisa
Empleado
b)
Supervisor
Entidad dbil con una relacin uno a mucho. Faltan los atributos.
Figura N 3.4 Sustitucin de una relacin recursiva por una entidad dbil.
Fuente: El autor, 2009.
4. Eliminar las relaciones con atributos (ver figura 3.5a), sustituyendo cada una de ellas
por una nueva entidad (dbil) y las relaciones binarias correspondientes de esta nueva entidad
con las entidades originales, figura 3.5b. La cardinalidad de estas relaciones
rela
depender del
tipo de la relacin original y de su significado. Ejemplo en la figura siguiente:
Nombre
CURP
Fecha
Direccin
Tipo Cta.
Cliente
No_Cta
Saldo
Cuenta
ClienteCta
Figura N 3.5 Sustitucin de una relacin con atributos por una entidad dbil.
Fuente: El autor, 2009.
5. Eliminar los atributos multievaluados (ver figura 3.6a), sustituyendo cada uno de ellos
por una nueva entidad (dbil) y una relacin binaria de uno a muchos con la entidad original,
ver figura 3.6b. Ejemplo figura siguiente.
cdula
Nombre
Telfonos
Cliente
a) Entidad con atributo multivaluado.
Cdula
Nombre
Cliente
Nmero
Telfonos
Cliente
12
Tabla: Cliente
Calle
cdula
Nombre
Nmero
Direccin
Cliente
Cdula
Nombre
Avenida
Calle
N_Casa
Telfonos
Cliente
Entidad Dbil
Entidad Fuerte
Figura 3.7 Conversin de una entidad fuerte en una tabla de la base de datos.
Fuente: El autor, 2009.
2. Entidades dbiles. Para cada entidad dbil del diagrama E-R, crear una relacin (tabla)
incluyendo todos sus atributos simples. De los atributos compuestos incluir slo sus
componentes. Aadir a la relacin (tabla) una clave ajena o fornea. Para ello, se incluye la
clave primaria de la relacin (tabla) que representa a la entidad fuerte o padre, en la nueva
relacin creada para la entidad dbil, ver figura 3.8. Subrayar la clave primaria, en este caso
se trata de una clave primaria compuesta.
Tabla: TelfonosCliente
Avenida
N_Casa
Calle
cdula
Nombre
Direccin
Cliente
Entidad Fuerte
Nmero
Telfonos
Cliente
Entidad Dbil
13
Cdula
Nmero
Figura 3.8 Conversin de una entidad dbil en una tabla de la base de datos.
Fuente: El autor, 2009.
3. Relaciones binarias de uno a uno. Para cada relacin binaria de uno a uno del diagrama
E-R, se debe incluir los atributos candidatos de la entidad padre en la relacin (tabla) que
representa a la entidad hijo, para actuar como una clave ajena. La entidad hijo es la que
participa de forma total (obligatoria) en la relacin, mientras que la entidad padre es la que
participa de forma parcial (opcional). Si las dos entidades participan de forma total o parcial en
la relacin uno a uno, la eleccin de padre e hijo es arbitraria. Adems, en caso de que ambas
entidades participen de forma total en la relacin, se tiene la opcin de integrar las dos
entidades en una sola relacin (tabla). Esto se suele hacer si una de las entidades no participa
en ninguna otra relacin. Ver figura 3.9.
Entidad Hijo
Entidad Padre
Tabla: Presidente
Nombre
Tabla: Pas
Direccin
Partido
NomPais
Nombre
Habitantes
Dimensin
Figura 3.9 Conversin de una relacin binaria de uno a uno al modelo relacional.
Fuente: El autor, 2009.
4. Relaciones binarias de uno a muchos. Como en las relaciones binarias de uno a uno, se
incluyen los atributos de la clave primaria de la entidad padre en la relacin (tabla) que
representa a la entidad hijo, para actuar como una clave ajena. Pero ahora, la entidad padre
es la parte del muchos'' (cada padre tiene muchos hijos), mientras que la entidad hijo es la
parte del uno'' (cada hijo tiene un solo padre). Ver figura siguiente.
cdula
Nombre
Empleado
Entidad Fuerte
Cargo
Cdula
Nombre
Edad
Hijos
Entidad Dbil
14
Tabla: Empleado
Cdula
Nombre
Tabla: Hijos
Cargo
CdulaPadre
Cdula
Nombre
Edad
Figura 3.10 Conversin de una relacin binaria de uno a uno al modelo relacional.
Fuente: El autor, 2009.
EMPLEADO
DNI
Pila
Ape1
SECRETARIA
DNI
Veloc
Ape2
Fecha
Dir
tipoTrabajo
TECNICO
DNI
INGENIERO
Nivel
DNI
Tipo
Opcin B: Crear para cada subclase una relacin con los atributos de la superclase ms los
atributos propios, donde la clave primaria ser la de la superclase. Esta opcin slo es vlida
para las especializaciones con restriccin de totalidad y desunin ya que, si una ocurrencia de
15
COCHE
Nvehiculo
Matrcula
Precio
V.max
Npas
CAMION
Nvehiculo
Matrcula
Precio
Nejes
Peso
Opcin C: Crear una sola relacin con todos los atributos de la superclase y las subclases
ms un atributo T que indica la subclase a la que la tupla pertenece. Esto corresponde a una
especializacin de clases desunidas y puede generar muchos valores nulos. Esta opcin no
es apropiada cuando se utilizan muchos atributos de definicin para la especializacin. Si se
utilizan pocos atributos de especificacin,
especificacin, esta opcin es preferible a las opciones A y B, ya
que, no requiere la utilizacin de JOIN para la conformacin de la superclase completa. Ver
figura:
PERSONA
DNI Nombre
Sexo
Dir
Fecha-n
Sueldo
especialidad
TipoPersona
16
Opcin D: Crear una sola tabla con todos los atributos de la superclase ms atributos de las
subclases, mas unos atributos Ti cuyo valor lgico nos indicar a qu subclase pertenece la
tupla. Esta opcin corresponde una especializacin con solapamiento. Ver figura siguiente:
PERSONA
DNI
Nombre
Dir
Fecha_n
Sexo
Empleado
Sueldo
Estudiante
Especialidad
El proceso de normalizacin tiene un nombre y una serie de reglas para cada fase. Esto
puede parecer un poco confuso al principio, pero poco a poco se va entendiendo el proceso,
as como las razones para hacerlo de esta manera.
17
Descripcin
Primera Forma
Normal (1FN)
Segunda Forma
Normal (2FN)
Asegura que todos los atributos (campos) que no son clave primaria sean
completamente dependientes de la clave primaria (llave).
Tercera Forma
Normal (3FN)
Todos los atributos son atmicos. Un atributo es atmico si los elementos del dominio
son indivisibles, mnimos.
La relacin contiene una clave primaria.
La relacin no contiene atributos nulos.
Si no posee ciclos repetitivos.
Telfono
123
0293-55586025
Raquel
Prez
18
456
Jaime
Rengel
0281-55540359
789
Mara
Fernndez 0414-55508633
Telfono
123
Raquel
Prez
02935556025
456
Jaime
Rengel
02815554059
02815557700
789
Mara
Fernndez 04145550833
Telfono 1
123
Raquel
Prez
02935556025
Telfono 2
456
Jaime
Rengel
02815554059 02815557700
789
Mara
Fernndez 04145550833
Telfono 3
Sin embargo, esta representacin hace uso de columnas que permiten valores nulos, y
por lo tanto no se conforman con la definicin de la 1FN. Incluso si se contempla la posibilidad
de columnas con valores nulos, el diseo no est en armona con el espritu de 1FN. Telfono
1, Telfono 2, y Telfono 3, comparten exactamente el mismo dominio y exactamente el
mismo significado; el dividir del nmero de telfono en tres encabezados es artificial y causa
problemas lgicos. Estos problemas incluyen:
19
La restriccin de los nmeros de telfono por cliente a tres. Si viene un cliente con
cuatro nmeros de telfono, estamos obligados a guardar solamente tres y dejar el
cuarto sin guardar. Esto significa que el diseo de la base de datos est imponiendo
restricciones al proceso del negocio, en vez de (como idealmente debe ser el caso) al
revs.
Telfono
123
Raquel
Prez
02935556025
456
Jaime
Rengel
02815554059, 0281557700
789
Mara
Fernndez 04145550833
Raquel
Prez
456
Jaime
Rengel
789
Mara
Fernndez
20
123
02935556025
456
02815554059
456
02815557700
789
04145550833
2. Qu es Atomicidad?
E.F. Codd, hace referencia al concepto de atomicidad e indica que "se requiere que los
valores sean atmicos con respecto al SMBD en los dominios en los que cada relacin es
definida". Codd define un valor atmico como uno que "no puede ser descompuesto en
pedazos ms pequeos por el SMBD (excepto ciertas funciones especiales)".
Hugh Darwen y Chris Date han sugerido que el concepto de Codd de un "valor atmico"
es ambiguo, y que esta ambigedad ha conducido a una extensa confusin sobre cmo debe
ser entendida la 1FN. En particular, la nocin de un "valor que no puede ser descompuesto"
es problemtica, pues parecera implicar que pocos, si algn, tipos de datos son atmicos:
Date sugiere que "la nocin de atomicidad no tiene ningn significado absoluto": un valor
puede ser considerado atmico para algunos propsitos, pero puede ser considerado un
ensamblaje de elementos ms bsicos para otros propsitos. Si esta posicin es aceptada, la
1FN no puede ser definida con referencia a la atomicidad. Las columnas de cualquier tipo de
datos concebible (desde tipos de cadenas y tipos numricos hasta tipos de arreglos y tipos de
tabla) son entonces aceptables en una relacin 1FN - aunque quizs no siempre deseable.
Date discute que los atributos relacin-valor, por medio de los cuales un campo dentro de una
relacin puede contener una relacin, son tiles en casos raros.
3.7.3 Segunda Forma Normal (2FN).
Una relacin est en 2FN si est en 1FN y si los atributos que no forman parte de la
clave primaria dependen de ella en forma completa. Es decir que no existen dependencias
parciales.
La regla de la 2FN establece que todas las dependencias parciales se deben eliminar y
separar dentro de sus propias tablas. Una dependencia parcial es un trmino que describe a
21
aquellos datos que no dependen de la clave primaria de la relacin (tabla) para identificarlos.
Una vez alcanzado el nivel de la 2 Forma Normal, se controlan la mayora de los problemas de
lgica. Podemos insertar un registro sin un exceso de datos en la mayora de las tablas.
FECHA
ID_CLIENTE
NOM_CLIENTE
ESTADO
NUM_ITEM
DESC_ITEM
CANT
PRECIO
2301
23/02/08
101
MARTI
SUCRE
3786
RED
35
2301
23/02/08
101
MARTI
SUCRE
4011
RAQUETA
65
2301
23/02/08
101
MARTI
SUCRE
9132
PAQ-3
4.75
2302
25/02/08
107
HERMAN
LARA
5794
PAQ-6
5.0
2303
27/02/08
110
MARIA
APURE
4011
RAQUETA
65
2303
27/02/08
110
MARIA
APURE
3141
FUNDA
10
22
1. Tenemos que eliminar de la relacin ORDENES las columnas que estn causando la
los grupos repetidos de valores, es decir, las columnas NUM_ITEM, DESC_ITEM,
CANT y PRECIO.
2. Tenemos que crear una nueva relacin; la misma ha de tener la Clave Primaria (FK)
de la relacin base, es decir, la columna ID_ORDEN, y el grupo de columnas que
eliminamos en el paso anterior.
3. Posteriormente, definimos una Clave Primaria para la nueva relacin. Esta ser una
clave compuesta por la Clave Primaria de la relacin base y una de las columna
restantes. Se debe considerar cual de ellas es la ms adecuada.
Los registros quedan ahora conformados en dos relaciones; la relacin Base RDENES
y la nueva relacin ARTCULOS_ORDENES.
ID_ORDEN
FECHA
ID_CLIENTE
NOM_CLIENTE
ESTADO
2301
2/23/03
101
MARTI
SUCRE
2302
2/25/03
107
HERMAN
LARA
2303
2/27/03
110
MARIA
APURE
ID_ORDEN
NUM_ITEM
DESC_ITEM
CANT
PRECIO
2301
3786
RED
35
2301
4011
RAQUETA
65
2301
9132
PAQ-3
4.75
2302
5794
PAQ-6
5.0
2303
4011
RAQUETA
65
2303
3141
FUNDA
10
23
Crear una segunda relacin con esos atributos y lo(s) atributos(s) de la clave primaria
de la cual dependen.
ID_ORDEN
NUM_ITEM
CANT
NUM_ITEM
DESC_ITEM
PRECIO
2300
3786
3786
RED
35
2301
4011
4011
RAQUETA
65
2301
9132
9132
PAQ-3
4.75
2302
5794
5794
PAQ-6
5.0
2303
4011
4011
RAQUETA
65
2303
3141
3141
FUNDA
10
24
La tercera forma normal nos dice que tenemos que eliminar cualquier columna no llave
que sea dependiente de otra columna no llave. Los pasos a seguir son:
Al observar las relaciones que se han creado, nos damos cuenta que tanto la relacin
Artculos, como la relacin Artculos _ rdenes se encuentran en 3FN. Sin embargo la
relacin rdenes no lo est, ya que NOM_CLIENTE y ESTADO son dependientes de
ID_CLIENTE, y esta columna no es la llave primaria.
Para normalizar esta relacin, realizaremos los siguientes pasos:
1. Eliminaremos de la relacin rdenes, las columnas no llave (NOM_CLIENTE y
ESTADO) que tienen dependencia transitiva.
2. Creamos una nueva relacin con estas columnas, y adicionamos la columna no llave
ID_CLIENTE que caus la dependencia transitiva.
3. La nueva relacin Clientes tendr como clave primaria la columna que produjo la
dependencia transitiva, es decir, ID_CLIENTE.
ID_ORDEN
FECHA
ID_CLIENTE
2301
2/23/03
101
2302
2/25/03
107
2303
2/27/03
110
NOM_CLIENTE
ESTADO
101
MARTI
CA
107
HERMAN
WI
110
MARIA
MI
25
manejar, as como flexibles y eficientes. A veces puede ocurrir que normalizar los datos hasta
el nivel ms alto no tenga sentido.
Se estn dividiendo relaciones slo para seguir las reglas o estas divisiones son en
verdad prcticas?. stas son el tipo de cosas que nosotros como diseadores de la base de
datos, necesitamos decidir, y la experiencia y el sentido comn nos pueden auxiliar para tomar
la decisin correcta. La normalizacin no es una ciencia exacta, ms bien subjetiva.
Existen seis niveles ms de normalizacin que no se han discutido aqu. Ellos son Forma
Normal Boyce-Codd, Cuarta Forma Normal (4NF), Quinta Forma Normal (5NF) o Forma
Normal de Proyeccin-Unin, Forma Normal de Proyeccin-Unin Fuerte, Forma Normal de
Proyeccin-Unin Extra Fuerte y Forma Normal de Clave de Dominio. Estas formas de
normalizacin pueden llevar las cosas ms all de lo que necesitamos. stas existen para
hacer una base de datos realmente relacional. Tienen que ver principalmente con
dependencias mltiples y claves relacionales.
088-51-0074
31850
1078
088-51-0074
37921
1293
096-77-4146
46224
1480
072-21-2223
31850
26
A
Calle
Habitantes
Telfonos
Nombre
Estado
Ubicacin
Edificio
Direccin
Fuentes
Financieras
Avenida
Monto
RIF
Comunidad
Cdigo
Partida
Direccin
Numero
Aportes
Financieros
Proyecto
Urbanstico
A-P
Vivienda
Dueo
Elaborado
IDProyecto
Fecha
Nmero
NroCheque
Costo
rea
Descripcin
27
B
Nombre
Titulo
Apellido
Cedula
Docentes
D-P
Nombre
Telfono
FechaInicio
Cdigo
Cargo
D-P
IdDepartamento
Descripcin
Departamento
D-P
Proyecto
Costo
C
Rif
Salas
Cines
Nombre
Nombre
Direccin
Publica
IdCartelera
H. Salida
Actores
H. Inicio
Clase
FechaFinal
Carteleras
Funcin
Pelculas
Titulo
Responsable
C-P
Cdigo
FechaInicio
Papel
Gnero
28
29
30
16. Normalizar las siguientes relaciones a su 1FN, 2FN y 3FN. Colocar nombres a las relaciones resultantes y sealar el o los campos
claves.
#
Proyecto
Descripcin
Proyecto
Fecha
Inicio
#
Servicio
Descripcin
Cedula
Nombre
Analista
01
Pagina WEB
12-03-04
L-A
Diseo
258
Jos
01
Pagina WEB
12-03-04
L-A
Diseo
115
Omar
01
Pagina WEB
12-03-04
L-P
Programacin
357
Mara
22-05-02
L-A
Diseo
578
Jos
L-D
Administrador
BDD
02
02
BDD Control
Egresados
BDD Control
Egresados
22-05-02
258
Voz Sobre IP
18-11-03
L-T
Telefona
115
Omar
03
Voz Sobre IP
18-11-03
L-C
Diseo
Cableado
987
Mara
03
Voz Sobre IP
18-11-03
L-A
Diseo
258
Jos
04
Diseo
Multimedia
22-06-04
L-A
Diseo
525
Pablo
Horas
Asignadas
Lnea
Investig.
Descrip.
Investig.
#
Dpto.
Nombre
Departamento
Costo
Total
Asignado
L1
Software
01
Telemtica
1.002.581
3.000.000
Diseo
Navegacional
Diagrama de
Clases
Cdigos
Fuentes
L1
Software
01
Telemtica
1.002.581
3.000.000
L1
Software
01
Telemtica
1.758.685
3.000.000
L1
Software
02
Informtica
1.000.000
2.000.0000
11
L1
Software
02
Informtica
1200.000
2.000.000
Modelo Fsico
Construccin
BDD
Mascara de
RED
Tendido de
Cable
Protocolo de
Red
Diagrama de
Clase
Jos
03
Meta a
Alcanzar
L2
Redes
05
Electrnica
800.000
1.500.000
15
L2
Redes
05
Electrnica
900.000
1.500.000
22
L2
Redes
05
Electrnica
900.000
1.500.000
116
L3
Multimedia
02
Informtica
1.500.000
1.500.000
Etc..
N
Equipo
Pas
Equipo
Manager
N
Partido
Fecha
Partido
Lugar
Partido
Total
Goles
Partido
Cedula
Jugador
Nombre
Jugador
89
89
89
89
89
89
90
90
90
91
91
91
92
92
92
Brasil
Brasil
Brasil
Brasil
Brasil
Brasil
Vzla
Vzla
Vzla
Per
Per
Per
Chile
Chile
Chile
Juan
Juan
Juan
Juan
Juan
Juan
Luis
Luis
Luis
Pedro
Pedro
Pedro
Carlos
Carlos
Carlos
101
101
101
102
102
102
101
101
101
102
102
102
103
103
103
12-06-92
12-06-92
12-06-92
14-07-93
14-07-93
14-07-93
12-06-92
12-06-92
12-06-92
14-07-93
14-07-93
14-07-93
21-06-94
21-06-94
21-06-94
Caracas
Caracas
Caracas
Cuman
Cuman
Cuman
Caracas
Caracas
Caracas
Cuman
Cuman
Cuman
Guiria
Guiria
Guiria
5
5
5
7
7
7
5
5
5
7
7
7
3
3
3
11
22
33
11
22
33
87
88
89
91
92
93
67
68
69
Nelson
Joel
Pablo
Nelson
Joel
Pablo
Marcos
Paz
Veliz
Pez
Richard
John
Veltri
Can
Jeli
Cedula
Nombre
Telfono
Cdigo Cargo
Cargo
Cdigo Curso
Posicin
Jugador
Partido
Central
Arquero
Defensa
Lateral
Defensa
Arquero
Lateral
Arquero
Central
Lateral
Arquero
Defensa
Defensa
Arquero
Lateral
Goles
Anotados
Jugador
Resultado
Partido
Total
Partidos
Equipo
0
0
1
2
3
0
2
0
0
2
0
1
0
1
2
Ganador
Ganador
Ganador
Perdedor
Perdedor
Perdedor
Perdedor
Perdedor
Perdedor
Ganador
Ganador
Ganador
Perdedor
Perdedor
Perdedor
3
3
3
3
3
3
5
5
5
4
4
4
2
2
2
Nombre Curso
Nivel
Resultado
31
17
17
17
17
18
19
19
20
Etc.
Juana
Juana
Juana
Juana
Pedro
Pablo
Pablo
Mara
Nmero
Vendedor
3462
3462
3462
3593
3593
3593
Etc.
4512656
4512656
4512656
4512656
4312586
4161582
4161582
485748
Nombre de
Vendedor
Pedro
Pedro
Pedro
Juan
Juan
Juan
#Proyecto
Nombre
#Area
01
01
01
01
02
02
02
Etc..
Tejido seo
Tejido seo
Tejido seo
Tejido seo
El Espacio
El Espacio
El Espacio
01
01
02
02
03
03
01
01
01
01
01
01
02
02
02
rea de
Venta
Cumana
Cumana
Cumana
Carpano
Carpano
Carpano
Nombre
Area
Medicina
Medicina
Salud
Salud
Matemticas
Matemticas
Medicina
Analista-Diseador
Analista-Diseador
Analista-Diseador
Analista-Diseador
Analista-Diseador
Especialista en Redes
Especialista en Redes
Especialista en Redes
Nmero de
cliente
15-2
14-9
16-8
21-4
16-5
11-2
Cedula
investigador
11826857
15752863
11824757
534534
534534
15752863
8564145
1-AA
1-BB
1-JJ
1-CC
1-AA
1-CC
1-DD
1-FF
Nombre del
Cliente
Juana
Maria
Jos
Luis
Martha
Andres
Power Designer
PowerBuilder
Java
SQL Server
Power Designer
SQL Server
UNIX
Power Designer
Nmero de
Bodega
4
3
3
2
2
1
Avanzado
Bsico
Medio
Medio
Avanzado
Medio
Avanzado
Medio
Ubicacin de
Bodega
Pen
San Luis
San Luis
Monte Verde
Monte Verde
EL Silencio
Nombre
Depto.
Costo
Total Proyecto
Juan
Pedro
Ana
Luis
Luis
Pedro
Maria
Biologa
Alimentos
Biologa
Biologa
Biologa
Alimentos
Fsica
1000
1000
2000
2000
5000
5000
3000
3000
3000
3000
3000
8000
8000
8000
Fuente
Financiera
Ivic
Ivic
Ivic
Ivic
Cenamec
Cenamec
Cenamec
Aprobado
Reprobado
Aprobado
Reprobado
Rechazado
Aprobado
Rechazado
Aprobado
Importe de
venta
12586
12248
22568
58932
12562
42155
Tiempo
1 Ao
1 Ao
1 Ao
1 Ao
6 Meses
6 Meses
6 Meses
32
33