7
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

Práctica Calificada Semana01 - Gd2-2014-II

Embed Size (px)

DESCRIPTION

descarga

Citation preview

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.