Práctica Calificada Semana01 - Gd2-2014-II
-
Upload
david-christiam-limachi -
Category
Documents
-
view
28 -
download
2
description
Transcript of Práctica Calificada Semana01 - Gd2-2014-II
Mg. Orleans Moisés Gálvez Tapia - Gestión de Datos II
1
Práctica Calificada – Gestión de Datos e Información II (Docente: Mg. Orleans Moisés Gálvez Tapia)
SECCIÓN:…………..……… TURNO:……..…………………… AULA:………….….…….… FECHA:…………….…………… Semana: 01
Alumno:
FORMAS NORMALES
Normalizando la BD: primera forma normal (1FN)
Se podría decir que al aplicarla hay que asegurarse de que:
No se permiten vectores de campos en una columna Un ejemplo de esto es cuando en un campo de texto
metemos varios valores del mismo dominio, como por ejemplo tres números de teléfono, o dos direcciones e-mail.
Lo típico en estos casos es separar los datos por comas, espacios u otro carácter y después procesarlo mediante la
aplicación.
Para evitar esto hay que definir una nueva tabla que tendrá el identificador de la tabla de la que parte y el campo
multivaluado, haciendo juntos de clave única compuesta (se puede definir otra incremental si se desea, pero el
conjunto de los otros dos campos tiene que ser único). Además en esta tabla se puede agregar campos que ayuden a
describir el tipo de registro.
Ejemplo
Incorrecto
clientes
IDCliente Nombre Telefono
45 Francisco 444444444
275 Miguel 555555555,666666666
Mg. Orleans Moisés Gálvez Tapia - Gestión de Datos II
2
Correcto
clientes
IDCliente Nombre
45 Francisco
275 Miguel
telefonos_cliente
IDCliente Telefono
45 444444444
275 555555555
275 666666666
No se permiten grupos repetidos en varias columnas Esto es una variante de lo anterior: separamos los campos de un mismo dominio en varias columnas, haciendo un
grupo difícilmente procesable a la hora de consultarlo. En el ejemplo anterior sería tener el campo telefono1,
telefono2… y así. Es evidente que este fallo del diseño es incluso peor que el anterior pues habrá muchos campos
nulos, y en caso de necesitar más tendríamos que redimensionar la tabla con un nuevo campo (telefono3). Pero la
solución es sencilla: la misma que en el anterior caso.
Ejemplo
Incorrecto
clientes
IDCliente Nombre Telefono Telefono2 Telefono3
45 Francisco 444444444 NULL NULL
275 Miguel 555555555 666666666 NULL
Correcto
clientes
IDCliente Nombre
45 Francisco
275 Miguel
telefonos_cliente
IDCliente Telefono
45 444444444
275 555555555
275 666666666
Normalizando la BD: segunda forma normal (2FN)
Una tabla está en segunda forma normal siempre que esté en primera forma normal y todos sus atributos (campos) dependan
totalmente de la clave candidata sin ser parte de ella. Viene a ser que, si un campo de la tabla no depende totalmente de una
clave única (que pueden ser compuestas), debe sacarse fuera con la parte de la clave principal de la que es dependiente.
Mg. Orleans Moisés Gálvez Tapia - Gestión de Datos II
3
Ejemplo
Incorrecto
lineas_pedido
IDCliente IDProducto Cantidad Nombre_producto
29 42 1 Zapatillas deportivas de tenis
46 9 5 Balón reglamentario de baloncesto
204 42 1 Zapatillas deportivas de tenis
144 10 1 Zapatillas deportivas de rugby
Correcto
lineas_pedido
IDCliente IDProducto Cantidad
29 42 1
46 9 5
204 42 1
144 10 1
productos
IDProducto Nombre_producto
9 Balón reglamentario de baloncesto
10 Zapatillas deportivas de rugby
42 Zapatillas deportivas de tenis
Normalizando la BD: tercera forma normal (3FN)
Una tabla está en tercera forma normal siempre que esté en segunda forma normal (y por consiguiente en primera) y todos
sus campos no primarios (campos que no forman parte de una clave candidata) dependen únicamente de la clave candidata.
Suena como la segunda forma normal, pero es muy distinta: ningún campo que no sea parte de la clave candidata puede
depender de otro campo que no sea la clave candidata.
Mg. Orleans Moisés Gálvez Tapia - Gestión de Datos II
4
Ejemplo
Incorrecto
carga_diaria
IDServidor Fecha IDServicio Nombre_servicio Carga
21 2009-01-14 1 Oracle 100
21 2009-01-15 9 MySQL 100
21 2009-01-16 22 Apache 85
34 2009-01-14 3 PostgreSQL 74
34 2009-01-15 22 Apache 58
34 2009-01-16 22 Apache 67
66 2009-01-14 9 MySQL 98
66 2009-01-15 22 Apache 94
66 2009-01-16 1 Oracle 10g 84
Correcto
carga_diaria
IDServidor Fecha IDServicio Carga
21 2009-01-14 1 100
21 2009-01-15 9 100
21 2009-01-16 22 85
34 2009-01-14 3 74
34 2009-01-15 22 58
34 2009-01-16 22 67
66 2009-01-14 9 98
66 2009-01-15 22 94
66 2009-01-16 1 84
servicios
IDServicio Nombre_servicio
1 Oracle
9 MySQL
22 Apache
3 PostgreSQL
22 Apache
22 Apache
9 MySQL
22 Apache
1 Oracle 10g
Mg. Orleans Moisés Gálvez Tapia - Gestión de Datos II
5
RESOLVER LOS SIGUIENTES EJERCICIOS
1. Se tiene una relación del REPORTE_MATRICULA (código_alumno, nombre_alumno, especialidad, código_curso,
nombre_curso, nombre_docente, oficina, sección) se pide aplicar las reglas de normalización llegando hasta las 3FN.
Código/
alumno
Nombre/
alumno Especialidad
Código/
curso Nombre_curso
Nombre/
docente Oficina curso
382145A Luis Zuloaga Industrial MA123 Matemática 2 Carlos
Arambulo CB-214 U
382145A Luis Zuloaga Industrial QU514 Física Química Petra Rondinel CB-110 U
382145A Luis Zuloaga Industrial AU521 Descriptiva Víctor Moncada CB-120 W
360247k Raúl Rojas Sistemas PA714 Investigación 1 Cesar Fernadez SC-220 V
360247k Raúl Rojas Sistemas MA123 Matemática 2 Carlos
Arambulo CB-214 V
360247k Raúl Rojas Sistemas AU511 Dibujo Víctor Moncada CB-120 U
2. Se presenta una base de datos de una biblioteca, aplicar las reglas de normalización simplificando hasta la tercera forma normal.
Prestamos_libro (codLibro, Titulo, Autor, Editorial, NombreLector, Fechadev)
codLibro Titulo Autor Editorial nombreLector Fechadev
1001 Variable compleja Murray Spiegel McGraw Hill Pérez Gómez, Juan 15/04/2005
1004 Visual Basic 5 E. Petroustsos Anaya Ríos Terán, Ana 17/04/2005
1005 Estadística Murray Spiegel McGraw Hill Roca, René 16/04/2005
1006 Oracle University Nancy Greenberg y Priya Nathan Oracle Corp. García Roque, Luis 20/04/2005
1007 Clipper 5.01 Ramalho McGraw Hill Pérez Gómez, Juan 18/04/2005
3. En la siguiente tabla REPORTE_VENTA, usted debe analizar toda la información disponible y aplicar el proceso de
normalización, hasta llegar a la Tercera Forma Normal. Se pide realizar la respectiva justificación detallada de cada uno de los
pasos que conduzcan al resultado final.
REPORTE_VENTA:
Mg. Orleans Moisés Gálvez Tapia - Gestión de Datos II
6
4. En la siguiente tabla ALUMNOS, usted debe analizar toda la información disponible y aplicar el proceso de normalización, hasta
llegar a la Tercera Forma Normal. Se pide realizar la respectiva justificación detallada de cada uno de los pasos que conduzcan al
resultado final.
Nº alumno Tutor Despacho-Tut Clase1 Clase2 Clase3
1022 García 412 101-07 143-01 159-02
4123 Díaz 216 201-01 211-02 214-01
5. En la siguiente tabla PRESTAMO_LIBROS, usted debe analizar toda la información disponible y aplicar el proceso de
normalización, hasta llegar a la Tercera Forma Normal. Se pide realizar la respectiva justificación detallada de cada uno de los
pasos que conduzcan al resultado final.
Mg. Orleans Moisés Gálvez Tapia - Gestión de Datos II
7
6. Ejercicio 06
A partir del siguiente supuesto diseñar el modelo entidad-relación.
“Se desea informatizar la gestión de un centro de enseñanza para llevar el control de los alumnos matriculados y los
profesores que imparten clases en ese centro. De cada profesor y cada alumno se desea recoger el nombre, apellidos,
dirección, población, dni, fecha de nacimiento, código postal y teléfono.
Los alumnos se matriculan en una o más asignaturas, y de ellas se desea almacenar el código de asignatura, nombre y
número de horas que se imparten a la semana. Un profesor del centro puede impartir varias asignaturas, pero una
asignatura sólo es impartida por un único profesor. De cada una de las asignaturas se desea almacenar también la nota
que saca el alumno y las incidencias que puedan darse con él.
Además, se desea llevar un control de los cursos que se imparten en el centro de enseñanza. De cada curso se
guardará el código y el nombre. En un curso se imparten varias asignaturas, y una asignatura sólo puede ser impartida
en un único curso.
Las asignaturas se imparten en diferentes aulas del centro. De cada aula se quiere almacenar el código, piso del
centro en el que se encuentra y número de pupitres de que dispone. Una asignatura se puede dar en diferentes aulas, y
en un aula se pueden impartir varias asignaturas. Se desea llevar un registro de las asignaturas que se imparten en
cada aula. Para ello se anotará el mes, día y hora en el que se imparten cada una de las asignaturas en las distintas
aulas.
La dirección del centro también designa a varios profesores como tutores en cada uno de los cursos. Un profesor es
tutor tan sólo de un curso. Un curso tiene un único tutor. Se habrá de tener en cuenta que puede que haya profesores
que no sean tutores de ningún curso”.
Pasar el modelo entidad-relación resultante al modelo relacional. Luego, si es necesario, normalizar hasta la 3
Forma Normal.
7. Ejercicio 07
La liga de fútbol profesional, presidida por Don Ángel María Villar, ha decidido informatizar sus instalaciones
creando una base de datos para guardar la información de los partidos que se juegan en la liga.
Se desea guardar en primer lugar los datos de los jugadores. De cada jugador se quiere guardar el nombre, fecha de
nacimiento y posición en la que juega (portero, defensa, centrocampista…). Cada jugador tiene un código de jugador
que lo identifica de manera única.
De cada uno de los equipos de la liga es necesario registrar el nombre del equipo, nombre del estadio en el que juega,
el aforo que tiene, el año de fundación del equipo y la ciudad de la que es el equipo. Cada equipo también tiene un
código que lo identifica de manera única. Un jugador solo puede pertenecer a un único equipo.
De cada partido que los equipos de la liga juegan hay que registrar la fecha en la que se juega el partido, los goles que
ha metido el equipo de casa y los goles que ha metido el equipo de fuera. Cada partido tendrá un código numérico
para identificar el partido.
También se quiere llevar un recuento de los goles que hay en cada partido. Se quiere almacenar el minuto en el que se
realizar el gol y la descripción del gol. Un partido tiene varios goles y un jugador puede meter varios goles en un
partido.
Por último se quiere almacenar, en la base de datos, los datos de los presidentes de los equipos de fútbol (dni, nombre,
apellidos, fecha de nacimiento, equipo del que es presidente y año en el que fue elegido presidente). Un equipo de
fútbol tan sólo puede tener un presidente, y una persona sólo puede ser presidente de un equipo de la liga.
Pasar el modelo entidad-relación resultante al modelo relacional. Luego, si es necesario, normalizar hasta la 3
Forma Normal.