Anda di halaman 1dari 11

ESCUELA DE INGENIERIA DE SISTEMAS

BASES DE DATOS : EJERCICIOS


Profesor : Carlos Enrique Armas Romero
Fecha
: Lima, 15 de Septiembre del 2015
Alumno

2015 III

: ..
NORMALIZACION DE DATOS

Aplicar las reglas de normalizacin en los siguientes ejercicios.


1. Un dato sin normalizar no cumple con ninguna regla de normalizacin. Para
explicar con un ejemplo en qu consiste cada una de las reglas, vamos a
considerar los datos de la siguiente tabla.
ordenes (id_orden, fecha, id_cliente, nom_cliente, estado, num_art,
nom_art, cant, precio)
Ordenes
Id_orden

Fecha

2301

23/02/13

101

Martin

Caracas

3786

Red

35,00

2301

23/02/13

101

Martin

Caracas

4011

Raqueta

65,00

2301

23/02/13

101

Martin

Caracas

9132

Paq-3

4,75

2302

25/02/13

107

Herman

Coro

5794

Paq-6

5,00

2303

27/02/13

110

Pedro

Maracay

4011

Raqueta

65,00

2303

27/02/13

110

Pedro

Maracay

3141

Funda

10,00

Id_cliente Nom_cliente

Estado

Num_art nom_art cant Precio

PRIMERA FORMAL NORMAL (1FN)


Al examinar estos registros, podemos darnos cuenta que contienen un
grupo repetido para NUM_ART, NOM_ART, CANT y PRECIO. La 1FN
prohbe los grupos repetidos, por lo tanto tenemos que convertir a la
primera forma normal. Los pasos a seguir son:
Eliminar los grupos repetidos.
Crear una nueva tabla con la PK de la tabla base y el grupo repetido.

Los registros quedan ahora conformados en dos tablas que llamaremos


ORDENES y ARTICULOS_ORDENES
ordenes (id_orden, fecha, id_cliente, nom_cliente, estado)
Articulos_ordenes (id_orden, num_art, nom_art, cant, precio)
Ordenes
Id_orden

Fecha

2301

23/02/13

101

Martin

Caracas

2302

25/02/13

107

Herman

Coro

2303

27/02/13

110

Pedro

Maracay

Id_cliente Nom_cliente

Articulos_ordenes
Id_orden Num_art nom_art

cant

Precio

2301

3786

Red

35,00

2301

4011

Raqueta

65,00

2301

9132

Paq-3

4,75

2302

5794

Paq-6

5,00

2303

4011

Raqueta

65,00

2303

3141

Funda

10,00

Estado

SEGUNDA FORMAL NORMAL (2FN)


Aplicar la segunda formal normal, es decir, eliminar cualquier columna no
llave que no dependa de la llave primaria de la tabla. Los pasos a seguir
son:
Determinar cules columnas que no son llave no dependen de la llave
primaria de la tabla.
Eliminar esas columnas de la tabla base.
Crear una segunda tabla con esas columnas y la(s) columna(s) de la PK
de la cual dependen.
La tabla ORDENES est en 2FN. Cualquier valor nico de ID_ORDEN
determina un slo valor para cada columna. Por lo tanto, todas las
columnas son dependientes de la llave primaria ID_ORDEN.
Por su parte, la tabla ARTICULOS_ORDENES no se encuentra en 2FN ya
que las columnas PRECIO y NOM_ART son dependientes de NUM_ART,
pero no son dependientes de ID_ORDEN. Lo que haremos a continuacin
es eliminar estas columnas de la tabla ARTICULOS_ORDENES y crear una

tabla ARTICULOS con dichas columnas y la llave primaria de la que


dependen.
Las tablas quedan ahora de la siguiente manera.
Articulos_ordenes (id_orden, num_art, cant)
Articulos_ordenes
Id_orden Num_art

cant

2301

3786

2301

4011

2301

9132

2302

5794

2303

4011

2303

3141

Articulos ( num_art, nom_art, precio)


Articulos
Num_art nom_art

Precio

3786

Red

35,00

4011

Raqueta

65,00

9132

Paq-3

4,75

5794

Paq-6

5,00

3141

Funda

10,00

TERCERA FORMAL NORMAL (3FN)


La tercera forma normal dice que se debe eliminar cualquier columna no
llave que sea dependiente de otra columna no llave. Los pasos a seguir
son:
Determinar las columnas que son dependientes de otra columna no
llave.
Eliminar esas columnas de la tabla base.
Crear una segunda tabla con esas columnas y con la columna no llave
de la cual son dependientes.
Al observar las tablas que creadas, nos damos cuenta que tanto la tabla
ARTICULOS, como la tabla ARTICULOS_ORDENES se encuentran en 3FN.

Sin embargo la tabla ORDENES 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 tabla, moveremos las columnas no llave y la columna
llave de la cual dependen dentro de una nueva tabla CLIENTES. Las
nuevas tablas CLIENTES y ORDENES se muestran a continuacin.
ordenes (id_orden, fecha, id_cliente)
Ordenes
Id_orden

Fecha

Id_cliente

2301

23/02/13

101

2302

25/02/13

107

2303

27/02/13

110

Clientes (id_cliente, nom_cliente, estado)


Ordenes
Id_cliente Nom_cliente

Estado

101

Martin

Caracas

107

Herman

Coro

110

Pedro

Maracay

Por lo tanto la base de datos queda de la siguiente manera:


ordenes (id_orden, fecha, id_cliente)
Clientes (id_cliente, nom_cliente, estado)
Articulos ( num_art, nom_art, precio)
Articulos_ordenes (id_orden, num_art, cant)

2. CASO DE ESTUDIO : FACTURA DE COMPRA VENTA:


La empresa COLOMBIAN SYSTEMS lo ha contratado como el Ingeniero
Encargado para sistematizar la facturacin. En la siguiente FACTURA DE
COMPRA VENTA, usted debe analizar toda la informacin disponible y
aplique el proceso de normalizacin, hasta llegar a la Tercera Forma
Normal.
Se pide realizar la respectiva justificacin detallada de cada uno de los
pasos que conduzcan al resultado final.

Factura (NUM_FAC, FECHA_FAC, NOM_CLIENTE, DIR_CLIENTE,


RUC_CLIENTE, CIUDAD_CLIENTE, TELEF_CLIENTE, CATEGORIA,
COD_PROD, DESP_PROD, VAL_UNIT, CANT_PROD)
Donde:
NUM_FAC: Nmero de la factura de compra venta
FECHA_FAC: Fecha de la factura de compra venta
NOM_CLIENTE: Nombre del cliente
DIR_CLIENTE: Direccin del cliente
RUC_CLIENTE: Ruc del cliente
CIUDAD_CLIENTE: Ciudad del cliente
TELEF_CLIENTE: Telfono del cliente
CATEGORIA: Categora del producto
COD_PROD: Cdigo del producto
DESCRIPCION: Descripcin del producto
VAL_UNIT: Valor unitario del producto
CANT_PROD: Cantidad de productos que compra el cliente
La llave primaria es Nmero de Factura de venta: NUM_FAC
3. CASO DE ESTUDIO : EMPRESA DE ENVIO DE MERCANCIA
A continuacin se agrupan todos los atributos que hacen parte de la base
de datos para aplicarle las reglas de normalizacin. Donde se incluyen los
nombres de los atributos con su significado
* GUIA_NO = Numero de Gua
* GUIA_FECHA= Fecha de la Gua
* GUIA_HORA= Hora de la Gua
* ORGN_RUC = Identificacin de Empresa Origen
* ORGN_NOM = Nombre de Empresa Origen
* ORGN_ACT = Actividad Comercial de Empresa Origen
* ORGN_CIUDAD= Ciudad de Empresa Origen
* ORGN_DIR = Direccin de Empresa Origen
* ORGN_TEL = Telfono de Empresa Origen
* ORGN_CEL = Celular de Empresa Origen
* DEST_ID = Identificacin del destinatario
* DEST_NOM = Nombre del destinatario
* DEST_COD_CIUDAD = Cdigo de la ciudad del destinatario
* DEST_CIUDAD= Ciudad del destinatario
* DEST_DIR = Direccin del destinatario
* DEST_TEL = Telfono del destinatario
* DEST_KM = Distancia kilometraje de Ciudad origen a ciudad
destinatario
* CODIGO = Cdigo del paquete
* TIPO = Tipo de paquete
* NOMBRE = Nombre del paquete
* DESCRIPCION = Descripcin del paquete
* VALR_ FLETE = Valor del flete

del

4. CASO DE ESTUDIO : Empresa de Video club


En una tienda de video se necesita mantener informacin de alrededor de
3000 casetas cada uno de los casetes tiene asignado un nmero por cada
`pelcula se necesita conocer un ttulo y categora por ejemplo: comedia,
suspenso, drama, accin, ciencia ficcin, etc. Se mantienen algunas copias
de muchas pelculas. Se le da a cada pelcula una identificacin y se
mantiene seguimiento de lo que contiene cada casete.
Un casete puede venir en varios formatos y una pelcula es grabada en un
solo casete; frecuentemente las pelculas son pedidas de acuerdo a un
actor especifico Tom Cruise y Demi More son los ms populares es por esto
que se debe mantener informacin de los actores que pertenecen a cada
pelcula.
No en todas las pelculas actan artistas famosos, a los clientes de la tienda
le gusta conocer datos como el nombre real del actor, y su fecha de
nacimiento.
En la tienda se mantienen informacin solo de los actores que aparecen en
las pelculas y que se tiene a disposicin. Solo se alquila videos a aquellos
que pertenecen al club de videos. Para pertenecer al club se debe tener un
buen crdito. Por cada miembro del club se mantiene una ficha con su
nombre, telfono y direccin, cada miembro del club tiene asignado un
nmero de membresa. Se desea mantener informacin de todos los
casetes que un cliente alquila, cuando un cliente alquila un casete se
debera conocer el nombre de la pelcula, la fecha en la que se alquila y la
fecha de devolucin.
Se pide aplicar las reglas de normalizacin hasta la tercera forma normal,
teniendo las siguientes entidades con sus respectivos atributos:
Alquiler (cod_alquiler, num_membresia, cod_cliente, nom_cliente,
dir_cliente, telef_cliente, cod_cassette, fecha_alquiler, fecha_dev,
valor_alquiler, cantidad)
Cassettte (cod_cassette, num_copias, formato, cod_pelicula, titulo,
categora, cod_actor, nom_actor, fechanac_actor, cod_tipo)
Donde:
cod_alquiler = Codigo del alquiler
num_membresia = Numero de membresa
cod_cliente = cdigo del cliente
nom_cliente = nombre del cliente
dir_cliente = direccin del cliente
telef_cliente = telfono del cliente
cod_cassette = cdigo del cassette
fecha_alquiler = fecha del alquiler del al pelcula
fecha_dev = fecha de devolucin de la pelicula
valor_alquiler = valor del alquiler de la pelcula
cantidad = cantidad de pelcula alquilada
num_copias = nmeros de copias de cassette
formato = formato del cassette

titulo = nombre de la pelcula


categora = categora de la pelcula
cod_actor = cdigo del actor
nom_actor = nombre del actor
fechanac_actor = fecha de nacimiento del actor
cod_tipo = cdigo del tipo de pelcula.
5. CASO DE ESTUDIO : Prestamo de Libros
Dada la siguiente relacin PRESTAMO_LIBROS (Colegio, profesor,
asignatura/ habilidad, aula, curso, libro, editorial, fecha_prestamo) que
contiene informacin relativa a los prstamos que realizan las editoriales a
los profesores de primaria de los colegios para su evaluacin en alguna de
las asignaturas/habilidades que imparten. Se pide aplicar las reglas de
normalizacin y obtener su modelo relacional, indicar sus claves, atributos
principales.
Colegio

Profesor

C.P
Cervantes

Juan
Prez

C.P
Cervantes

Juan
Prez

C.P
Cervantes

C.P
Cervantes

C.P
Cervantes

Asignatura/
habilidad

Aula

Pensamiento
1.A01
Lgico

Curso

1er
Grado

1.A01

1er
Grado

Juan
Prez

Pensamiento
1.A01
Numrico

1er
Grado

Alicia
Garca

Pensamiento
Espacial,
1.B01
Temporal y
causal

1er
Grado

Alicia
Garca

Escritura

Pensamiento
1.B01
Numrico

1er
Grado

C.P
Andrs
Cervantes Fernndez

Escritura

1.A01

2do
Grado

C.P
Andrs
Cervantes Fernndez

Ingles

1.A01

2do
Grado

Pensamiento
2.B01
Lgico

1er
Grado

C.P
Quevedo

Juan
Mndez

Libro

Editorial Fecha_prestamo

Aprender
y ensear
en
educacin
infantil
Preescolar
Rubio,N56
Aprender
y Ensear
en
educacin
infantil

Gra

09/09/2013

Tcnicas
Rubio

05/05/2013

Gra

05/05/2013

Educacin
Infantil N9

Prentice
Hall

06/05/2013

Gra

06/05/2013

Gra

09/09/2013

Temas
de Hoy

05/05/2013

Temas
de Hoy

18/12/2013

Aprender
y ensear
en
educacin
infantil
Aprender
y ensear
en
educacin
infantil
Saber
educar:
gua para
Padres y
Profesores
Saber
educar:

C.P
Quevedo

Juan
Mndez

Pensamiento
2.B01
Numrico

1er
Grado

gua para
Padres y
Profesores
Aprender
y ensear
en
educacin
infantil

Gra

06/05/2013

6. CASO DE ESTUDIO : Reporte Matricula


Se tiene una relacin del REPORTE_MATRICULA (cdigo_alumno,
nombre_alumno,
especialidad,
cdigo_curso,
nombre_curso,
nombre_docente, oficina, seccin) se pide aplicar las reglas de
normalizacin llegando hasta las 3FN.
Cdigo/
alumno
382145
A
382145
A
382145
A

Nombre/
alumno
Luis
Fernandez
Luis
Fernandez
Luis
Fernandez

Especialid
ad

Cdigo/
Curso

Nombre_curs
o

Industrial

MA123

Matemtica 2

Industrial

QU514

Fsica Qumica

Industrial

AU521

Descriptiva

360247k

Ral Rojas

Sistemas

PA714

Investigacin 1

360247k

Ral Rojas

Sistemas

MA123

Matemtica 2

360247k

Ral Rojas

Sistemas

AU511

Dibujo

Nombre/
docente
Carlos
Garcia

Aula

Secci
on

CB-214

Petra Rondil

CB-110

Vctor Garcia

CB-120

SC-220

CB-214

CB-120

Cesar
Fernadez
Carlos
Garcia
Vctor Garcia

7. CASO DE ESTUDIO : Base de Datos de una Biblioteca


Se presenta una base de datos de una biblioteca, aplicar las reglas de
normalizacin simplificando hasta la tercera forma normal.
Prestamos_libro (codLibro, Titulo, Autor, Editorial, NombreLector,
Fechadev)
codLibro
1001

Titulo
Variable
compleja
Visual Basic
5
Estadstica

Autor
Murray Spiegel

1006

Oracle
University

1007

Oracle 12.1

Nancy
Greenberg y
Priya Nathan
Ramalho

1004
1005

E. Petroustsos
Murray Spiegel

Editorial
McGraw
Hill
Anaya
McGraw
Hill
Oracle
Corp.
McGraw
Hill

nombreLector
Prez Gmez,
Juan
Ros Tern,
Ana
Roca, Ren

Fechadev
15/04/2013

Garca Roque,
Luis

20/04/2013

Prez Gmez,
Juan

18/04/2013

17/04/2013
16/04/213

8.- CASO DE ESTUDIO : Agencia de Publicidad


Una agencia de publicidad necesita una base de datos para registrar todas sus
campaas en la web. Sus clientes tienen un nombre, una direccin postal, un
nmero de telfono y una direccin de correo electrnico. Cada cliente puede
contratar varios anuncios. Los anuncios quedan identificados por un cdigo y
se caracterizan por un nombre, tipo (banner, popup, en lace patrocinado, etc.),
ttulo, contenido, categora (tipo del producto que anuncia) y precio. Hay que
tener en cuenta que los anuncios pueden aparecer en ms de una pgina web.
A su vez, cada web viene caracterizada por su URL, nombre y tpico de inters
y, puede mostrar varios anuncios. Es necesario almacenar la fecha de inicio y
la fecha de fin de la aparicin de cada anuncio en la pgina web.
9.- CASO DE ESTUDIO : Prstamos de Libros
Una biblioteca necesita disponer de una base de datos para llevar la gestin de
sus prstamos. La base de datos deber almacenar los siguientes datos sobre
los lectores: un identificador de lector, su nombre, ciudad en la que vive, tipo de
libros que le gustan leer y el nmero de habitantes de su ciudad (para elaborar
posibles estadsticas). Por su parte, sobre los libros de la biblioteca se debe
registrar el cdigo del libro, ttulo, tipo de libro (drama, comedia, terror,
romntico, aventuras, biografa, etc.); y lo ms importante, la biblioteca debe
conocer en todo momento qu libro est prestado y a quin, as como la fecha
de realizacin y devolucin del prstamo.
10.- CASO DE ESTUDIO : Empresa inmobiliaria
Una promotora inmobiliaria de viviendas quiere crear una base de datos para
llevar un registro de las promociones que tiene en venta. Una promocin se
caracteriza por un cdigo interno, un nombre, poblacin en la que est ubicada
y un plano de situacin.
Cada promocin est formada por un conjunto de viviendas, de las cuales se
almacena un identificador, superficie, nmero de habitaciones, nmero de
baos, un plano de la vivienda, una foto y el precio. Adems, se debe registrar
si la vivienda tiene o no terraza, jardn privado, piscina y garaje.
Para la construccin, publicidad y venta de una promocin, la promotora puede
contratar a distintas empresas; a su vez, una misma empresa puede participar
en distintas promociones. De cada empresa es necesario almacenar su
nombre, tipo, direccin completa, telfono, fax, e-mail, as como el importe del
contrato entre la empresa y la promotora.
11. CASO DE ESTUDIO : Organismo No Gubernamental
Una ONG desea elaborar una base de datos para llevar el seguimiento de
todos sus proyectos. Esta ONG tiene diversas sedes en varios pases que se
encargan de gestionar y coordinar los proyectos de ese pas, cada uno de los
cuales puede afectar a una o varias poblaciones.

Sobre las sedes se desea mantener un identificador, la ciudad y pas en el que


se encuentra, junto con su direccin, un telfono de contacto y el nombre del
director. Cada sede gestiona un conjunto de proyectos, con un cdigo, un ttulo,
fechas de inicio y finalizacin, el presupuesto asignado y el nombre del
responsable.
De cada proyecto, es necesario conocer qu actuaciones se realizan en cada
poblacin, almacenando el nombre, pas y nmero de habitantes, as como un
identificador para diferenciarlas. Adems, se desea conocer la inversin del
proyecto que corresponde a la poblacin y una pequea descripcin de la
actuacin.
12. CASO DE ESTUDIO : Alquiler de vehculos
Una empresa de alquiler de vehculos desea conocer en todo momento el
estado de su flota. La empresa tiene diversas oficinas repartidas por todo el
territorio espaol. Cada oficina se identifica por un cdigo nico y se caracteriza
por la ciudad en la que se encuentra y su direccin completa (calle, nmero y
cdigo postal) y telfono.
En cada oficina hay disponible un conjunto de coches, de los cuales se conoce
su matrcula, el grupo al que pertenece: A, B, C, D, E, F o G (que depender
del tipo y tamao del vehculo), la marca, el modelo, el nmero de puertas, el
nmero de plazas, la capacidad del maletero y la edad mnima exigida para el
alquiler.
Para llevar el control del estado de cada vehculo, la empresa mantiene un
registro de todos los alquileres que ha sufrido, indicando para cada uno de ellos
el nombre del conductor, su DNI, su direccin, un telfono de contacto y un
nmero de tarjeta de crdito sobre la que realizar los cargos correspondientes.
Adems de esta informacin de los clientes, para cada alquiler se almacena su
duracin (nmero de das), el tipo de seguro contratado y el precio total.
13. CASO DE ESTUDIO : Clnica Mdica
Una clnica desea mantener una base de datos con el historial de todos los
pacientes que tiene ingresados. La clnica est dividida en varias unidades,
cada una de las cuales tiene un identificador, y el nombre y la planta en la que
se encuentra. La unidad tiene un nico doctor responsable, del cual se desea
almacenar su cdigo, el nombre y la especialidad.
Cuando llega un paciente, se le ingresa en una unidad y se registra su nmero
de S.S., nombre, edad y fecha de ingreso. Durante su estancia en la clnica, se
anotan todas las intervenciones que realizan cada uno de los doctores,
indicando la fecha, el sntoma observado y el tratamiento prescrito.
14. CASO DE ESTUDIO : Casa de subastas
Una casa de subastas en Internet quiere mantener una base de datos para
registrar todas las transacciones que realiza. Los productos que se subastan se
agrupan en lotes. De cada lote se almacena un nmero de catlogo, un precio
de salida, la mayor puja realizada hasta el momento y el tiempo que queda de

subasta. De cada producto se almacena un cdigo, su nombre, una descripcin


corta y una fotografa. Un mismo producto no puede incluirse en lotes distintos.
Los clientes que participan en la subasta deben pujar por un lote completo (no
se admiten pujas por productos individuales). Cada vez que un cliente puja,
queda registrada la cantidad, el da y la hora en la que se ha producido.
Para identificar a los clientes, todos deben tener un nombre de usuario,
adems de una contrasea, su nombre y una direccin de correo electrnico.
No se admitirn pujas en el mismo instante.

Anda mungkin juga menyukai