Sesiรณn 1
Optimizar una base de datos
INSTITUTO DE COMPUINGLÉS DE ORIENTE
Tabla: Es una colección de datos que tienen los mismos atributos generales. Estos datos están organizados en filas y columnas. Una tabla debe representar una colección de datos del mundo real, una colección de datos llamada normalmente entidad, y puede haber relación con la información de otras tablas. Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
¿Qué columnas necesita mi tabla?
Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
¿Cómo defino mi clave principal?
Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
Definición de la tabla calificaciones
Calificaciones Folio Profesor Horario Materia Fecha Credencial Nombre Calificación Carrera Subdirector
Los nombres de las tablas y las columnas no deben llevar acento, es preferible que tampoco tengan espacios en blanco, asi que se pueden separar con subrayados.
folio profesor horario materia fecha credencial nombre calificacion carrera subdirector
Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
Práctica 1: Define en tu libreta una tabla para un formato de pedido de una empresa de productos lácteos. Identifica la columna que utilizarás como clave principal. En la diapositiva siguiente se muestra la hoja de pedido. Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
Práctica 2:
Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
Elementos clave para la normalización de tablas • El orden no debe ser importante. • Las tablas deben poderse relacionar entre si. • Al relacionar estas tablas base se pueden crear tablas virtuales para satisfacer necesidades diferentes. Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
La normalización: es el proceso de organizar los datos de una base de datos. Se incluye la creación de tablas y el establecimiento de relaciones entre ellas según reglas diseñadas tanto para proteger los datos como para hacer que la base de datos sea más flexible al eliminar la redundancia y las dependencias incoherentes. A estas reglas se les conocen como Formas Normales. Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
Cada regla se denomina una "forma normal". Si se cumple la primera regla, se dice que la base de datos está en la "primera forma normal". Si se cumplen las tres primeras reglas, la base de datos se considera que está en la "tercera forma normal". Aunque son posibles otros niveles de normalización, la tercera forma normal se considera el máximo nivel necesario para la mayor parte de las aplicaciones. Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
Primera forma normal (1FN) • Una tabla se encuentra en la primera forma normal, si y solo si cada una de las columnas contiene un único valor para una fila determinada (valor atómico).
Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
Primera forma normal (1FN) • Elimina los grupos repetidos de las columnas individuales. • Crea una tabla independiente para cada conjunto de datos relacionados. • Identifica cada conjunto de datos relacionados, con una clave principal. Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
Consecuencias de tener grupos de información repetidos • Almacenamiento • Operaciones con cantidad innecesaria de información • Datos que se repiten impidiendo consultas de información adecuada. Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
Tabla “calificaciones” folio
1250
profesor
horario
materia
fecha
Lic. Alejandra Ruiz Montero
08:00 - 13:00
Windows 8
23/08/2014
credencial nombre 25074 Eva Prieto Gonzalez 25177 Ana Alonso Torres 25246 Sara Navarro Vargas 25308 Carlos Ferrara Herrero 25320 Mario Nuñez Peña
1251
Lic. Alejandra Ruiz Montero
07:30 - 09:00
Word 2013
22/08/2014
25574 Jorge Zarate Caballero 25584 Victoria Marquez Marín 25827 Patricia Ferrara Guerrero 25016 Mauricio Lezama Cortes
1252
Ing. Carla Campos Crespo
09:00 - 10:30
Excel 2013
22/08/2014
25134 Christian Román Calvo 25166 Angel Iglesias León 25327 Rodrigo Pascual Herrero 25473 Alissa Castro Carrasco
1253
Ing. Carla Campos Crespo
10:30 - 12:00
Word 2013
22/08/2014
25825 Lourdes Prieto Vazquez 25969 Sergio Enriquez Vazquez Guillermo Castro 25970 Hernandez
calificación carrera 10 Diseño Gráfico Digital Programador de Sistemas y 9 Redes 8 Diseño Gráfico Digital Programador de Sistemas y 8 Redes 8 Diseño Gráfico Digital Programador de Sistemas y 10 Redes Asistente Ejecutivo en 10 Informática 9 Diseño Gráfico Digital Programador de Sistemas y 9 Redes Asistente Ejecutivo en 9 Informática Asistente Ejecutivo en 9 Informática Asistente Ejecutivo en 9 Informática 9 Diseño Gráfico Digital Programador de Sistemas y 10 Redes 9 Diseño Gráfico Digital
subdirector
Lic. Alfonso Osorio Ocampo
Lic. Alfonso Osorio Ocampo
Lic. Alfonso Osorio Ocampo
Lic. Alfonso Osorio Ocampo
9 Diseño Gráfico Digital
Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
La tabla anterior no esta en la primera forma normal. •
Cada fila contiene varios datos para las columnas Credencial, Nombre, Calificación y Carrera, y de acuerdo a la regla para la primera forma normal, cada columna debe tener un valor único.
•
Por ejemplo, la fila con folio 1251 tiene las credenciales 25320, 25574, 25584 y 25827, asi como los nombres de los alumnos asociados a esas credenciales Mario Nuñez Peña, Jorge Zarate Caballero, Victoria Marquez Marín y Patricia Ferrara Guerrero.
Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
Tablas a partir de la 1FN folio profesor 1250 Alejandra Ruiz Montero 1251 Alejandra Ruiz Montero 1252 Carla Campos Crespo 1253 Carla Campos Crespo
horario 08:00 - 13:00 07:30 - 09:00 09:00 - 10:30 10:30 - 12:00
Tabla: actas materia Windows 8 Word 2013 Excel 2013 Word 2013
folio
La clave principal de cada tabla aparece subrayada. En el caso de la tabla “actas”, la clave principal es folio. En el caso de la tabla “calificaciones” la clave principal es una clave compuesta por folio y credencial.
1250 1250 1250 1250 1251 1251 1251 1251 1252 1252 1252 1252 1253 1253 1253 1253
fecha subdirector 23/08/2014 Lic. Alfonso Osorio Ocampo 22/08/2014 Lic. Alfonso Osorio Ocampo 22/08/2014 Lic. Alfonso Osorio Ocampo 22/08/2014 Lic. Alfonso Osorio Ocampo
Se crean dos tablas a partir de la tabla original, de tal forma que cada columna de cada fila solo contenga un dato.
Tabla: calificaciones credencial nombre calificacion carrera 25074 Eva Prieto Gonzalez 10 Diseño Gráfico Digital 25177 Ana Alonso Torres 9 Programador de Sistemas y Redes 25246 Sara Navarro Vargas 8 Diseño Gráfico Digital 25308 Carlos Ferrara Herrero 8 Programador de Sistemas y Redes 25320 Mario Nuñez Peña 8 Diseño Gráfico Digital 25574 Jorge Zarate Caballero 10 Programador de Sistemas y Redes 25584 Victoria Marquez Marín 10 Asistente Ejecutivo en Informática 25827 Patricia Ferrara Guerrero 9 Diseño Gráfico Digital 25016 Mauricio Lezama Cortes 9 Programador de Sistemas y Redes 25134 Christian Román Calvo 9 Asistente Ejecutivo en Informática 25166 Angel Iglesias León 9 Asistente Ejecutivo en Informática 25327 Rodrigo Pascual Herrero 9 Asistente Ejecutivo en Informática 25473 Alissa Castro Carrasco 9 Diseño Gráfico Digital 25825 Lourdes Prieto Vazquez 10 Programador de Sistemas y Redes 25969 Sergio Enriquez Vazquez 9 Diseño Gráfico Digital 25970 Guillermo Castro Hernandez 9 Diseño Gráfico Digital
Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
Práctica 3: Aplica la primera forma normal a la tabla de Productos Lácteos de México que creaste previamente.
Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
Segunda forma normal (2FN) •
• •
•
Una tabla esta en 2FN si además de estar en 1FN, cualquiera de sus columnas (atributos) no primarios (los que no forman parte de la clave principal) tienen una dependencia funcional completa con la clave primaria de dicha tabla. Todas las columnas (atributos) deben depender de la clave principal completa y no solo de parte de esta. Entonces, este segundo paso se aplica solo a tablas con claves compuestas. Si una tabla que esta en 1FN no tiene clave compuesta entonces ya esta en 2FN. Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
Tablas folio profesor 1250 Alejandra Ruiz Montero 1251 Alejandra Ruiz Montero 1252 Carla Campos Crespo 1253 Carla Campos Crespo
horario 08:00 - 13:00 07:30 - 09:00 09:00 - 10:30 10:30 - 12:00
En el caso de la tabla “calificaciones” se usa una clave principal compuesta, aquí se puede ver que calificación depende de folio y de credencial, ambas partes de la clave principal. Nombre y carrera solo dependen de la columna credencial .
Tabla: actas materia Windows 8 Word 2013 Excel 2013 Word 2013
fecha subdirector 23/08/2014 Lic. Alfonso Osorio Ocampo 22/08/2014 Lic. Alfonso Osorio Ocampo 22/08/2014 Lic. Alfonso Osorio Ocampo 22/08/2014 Lic. Alfonso Osorio Ocampo
folio 1250 1250 1250 1250 1251 1251 1251 1251 1252 1252 1252 1252 1253 1253 1253 1253
Como la clave principal de la tabla “actas” no es una clave compuesta (ya que solo esta formada por la columna “folio”), entonces ya esta en 2FN.
Tabla: calificaciones credencial nombre calificacion carrera 25074 Eva Prieto Gonzalez 10 Diseño Gráfico Digital 25177 Ana Alonso Torres 9 Programador de Sistemas y Redes 25246 Sara Navarro Vargas 8 Diseño Gráfico Digital 25308 Carlos Ferrara Herrero 8 Programador de Sistemas y Redes 25320 Mario Nuñez Peña 8 Diseño Gráfico Digital 25574 Jorge Zarate Caballero 10 Programador de Sistemas y Redes 25584 Victoria Marquez Marín 10 Asistente Ejecutivo en Informática 25827 Patricia Ferrara Guerrero 9 Diseño Gráfico Digital 25016 Mauricio Lezama Cortes 9 Programador de Sistemas y Redes 25134 Christian Román Calvo 9 Asistente Ejecutivo en Informática 25166 Angel Iglesias León 9 Asistente Ejecutivo en Informática 25327 Rodrigo Pascual Herrero 9 Asistente Ejecutivo en Informática 25473 Alissa Castro Carrasco 9 Diseño Gráfico Digital 25825 Lourdes Prieto Vazquez 10 Programador de Sistemas y Redes 25969 Sergio Enriquez Vazquez 9 Diseño Gráfico Digital 25970 Guillermo Castro Hernandez 9 Diseño Gráfico Digital
Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
Tablas a partir de la 2FN folio profesor 1250 Alejandra Ruiz Montero 1251 Alejandra Ruiz Montero 1252 Carla Campos Crespo 1253 Carla Campos Crespo
Tabla: calificaciones folio credencial calificacion 1250 25074 10 1250 25177 9 1250 25246 8 1250 25308 8 1251 25320 8 1251 25574 10 1251 25584 10 1251 25827 9 1252 25016 9 1252 25134 9 1252 25166 9 1252 25327 9 1253 25473 9 1253 25825 10 1253 25969 9 1253 25970 9
horario 08:00 - 13:00 07:30 - 09:00 09:00 - 10:30 10:30 - 12:00
Tabla: actas materia Windows 8 Word 2013 Excel 2013 Word 2013
fecha subdirector 23/08/2014 Lic. Alfonso Osorio Ocampo 22/08/2014 Lic. Alfonso Osorio Ocampo 22/08/2014 Lic. Alfonso Osorio Ocampo 22/08/2014 Lic. Alfonso Osorio Ocampo
Tabla: alumnos
Se separa la tabla “calificaciones” en dos tablas: “calificaciones” y “alumnos”
credencial nombre 25074 Eva Prieto Gonzalez 25177 Ana Alonso Torres 25246 Sara Navarro Vargas 25308 Carlos Ferrara Herrero 25320 Mario Nuñez Peña 25574 Jorge Zarate Caballero 25584 Victoria Marquez Marín 25827 Patricia Ferrara Guerrero 25016 Mauricio Lezama Cortes 25134 Christian Román Calvo 25166 Angel Iglesias León 25327 Rodrigo Pascual Herrero 25473 Alissa Castro Carrasco 25825 Lourdes Prieto Vazquez 25969 Sergio Enriquez Vazquez 25970 Guillermo Castro Hernandez
carrera Diseño Gráfico Digital Programador de Sistemas y Redes Diseño Gráfico Digital Programador de Sistemas y Redes Diseño Gráfico Digital Programador de Sistemas y Redes Asistente Ejecutivo en Informática Diseño Gráfico Digital Programador de Sistemas y Redes Asistente Ejecutivo en Informática Asistente Ejecutivo en Informática Asistente Ejecutivo en Informática Diseño Gráfico Digital Programador de Sistemas y Redes Diseño Gráfico Digital Diseño Gráfico Digital
Área de Investigación en Computación
INSTITUTO DE COMPUINGLÉS DE ORIENTE
Práctica 4: Aplica la segunda forma normal a las tablas de Productos Lácteos de México que creaste previamente.
Área de Investigación en Computación