SlideShare une entreprise Scribd logo
1  sur  19
Télécharger pour lire hors ligne
Sergio Sánchez
   ¿Que es normalización?
   Normalización de una base de datos
   Grados de normalización: Primera Forma
   Grados de normalización: Segunda Forma
   Grados de normalización: Tercera Forma
   Otras formas de normalización
   Ejemplo
   Normalización es el proceso de organizar de
    manera eficiente los datos dentro de una
    base de datos. Esto incluye la creación de
    tablas y el establecimiento de relaciones
    entre ellas según reglas pre-diseñadas tanto
    para proteger los datos y la base de datos,
    como para hacer más flexible al eliminar la
    redundancia y dependencia incoherente.
   Los principales objetivos de la normalización
    son:
    ◦ La eliminación de datos redundantes, los cuales
      ocupan mas espacio en disco y crean problemas de
      mantenimiento; por ejemplo, cambio de la dirección
      del cliente es mucho más fácil de implementar si
      los datos se almacenan sólo en la tabla Clientes y
      en ninguna otra base de datos.
    ◦ Evitar problemas de actualización de los datos en
      las tablas.
    ◦ Garantizar que las dependencias que tienen los
      datos entre ellos, sean lógicas y presenten algún
      sentido.
   Estos puntos reducen la cantidad de espacio
    en la base de datos y aseguran que estos son
    almacenados de manera lógica (integridad).

   La normalización también se puede entender
    como el proceso mediante el cual se
    transforman datos complejos a un conjunto
    de estructuras de datos más pequeñas, que
    además de ser más simples y más estables,
    son más fáciles de mantener.
Existen algunas reglas para la normalización de
bases de datos. Cada regla se denomina
"forma normal". Si dentro de la base de datos
se observa la primera regla se dice que está en
"primera forma normal". Si las tres primeras
reglas se observan, la base de datos se
considera en "tercera forma normal". Aunque
es posible tener otros niveles de
normalización, la tercera forma normal es
considerado el más alto nivel necesario para la
mayoría de aplicaciones.
Como ocurre con muchas reglas y
especificaciones, en la vida real no siempre es
factible el cumplimiento de estas. En general,
la normalización requiere tablas adicionales y
para algunos clientes esto es engorroso. Si se
decide violar una de las tres primeras reglas de
normalización, tenga por seguro que su
aplicación presentara problemas, como los
datos redundantes y dependencias
incoherentes.
Los principales objetivos son:

   Eliminar grupos de datos repetidos en tablas
    individuales.
   Crear una tabla separada para cada conjunto
    de datos relacionados.
   Identifique cada conjunto de datos
    relacionados con una clave principal. Ejemplo
    ID, Primary Key, FK.
No utilizar varios campos en una sola tabla para
almacenar datos similares. Por ejemplo, para el
seguimiento de un artículo del inventario que proviene
de dos fuentes diferentes, el registro puede contener
campos para el código de proveedor 1 y un código de
proveedor 2.

¿Qué sucede cuando se agrega un tercer proveedor?
Agregar un campo no es la respuesta, ya que requiere
de programación y modificación de tablas y la
necesidad de repetirlo cada vez que se agregué a un
nuevo proveedor. En su lugar, se deberá poner toda la
información del proveedor en una tabla independiente
denominada Proveedores, y vincular el inventario con
los proveedores por medio de una clave o de sus
claves.
Los principales objetivos son:

   Crear tablas separadas para aquellos
    conjuntos de valores que se aplican a varios
    registros. Ejemplo ciudades, profesión.

   Relacionar estas tablas por medio de una
    clave externa, ejemplo ID, Primary Key, FK.
Los registros no deben depender de nada que no
sea la clave primaria de una tabla (una clave
compuesta, si es necesario). Por ejemplo,
consideremos la dirección de un cliente en un
sistema contable. La dirección no solo se necesita
en la tabla de clientes, sino también para los
pedidos, envío, facturas, cuentas por cobrar, e
inclusive en las ordenes. En lugar de almacenar la
dirección del cliente como una entrada
independiente en cada una de estas tablas,
guárdela en un lugar, ya sea en la tabla Clientes o
en una tabla de direcciones separada.
Los principales objetivos son:

   Eliminar los campos que no dependan de las claves.

Los valores de un registro que no forman parte de la clave
de registro no tienen cabida en la tabla.

Por ejemplo, en una tabla que contiene los datos de los
candidatos a un puesto, el nombre del candidato, nombre de
la universidad a la que asistió y la dirección pueden estar
incluidos. Pero existen muchas universidades. Si la
información de la universidad se almacena en la tabla de
candidatos, no hay manera de listar las universidades que no
tengan candidatos. La mejor opción es crear una tabla
separada de Universidades y vincularlo a la tabla Candidatos
con una llave de código de la universidad.
Cuarta forma normal, también llamada Boyce
Codd Forma Normal (FNBC), y quinta forma
normal, existen, pero rara vez se consideran en
el diseño práctico. Haciendo caso omiso de
estas reglas puede resultar en menos de
diseño de base de datos perfecto, pero no
debería afectar a la funcionalidad.
Aquí se muestra la normalización de una tabla
de estudiantes.

                       Nombre del
          Estudiante#             Salón    Clase1      Clase2     Clase3
                       titular
                       Sr.
                   102 Rodriguez       101 Matemáticas Literatura Química
                       Srita.
                   412 Jimenez         201 Biología    Geografía Cálculo
Se aplica la primera forma.

Las tablas deben tener sólo dos dimensiones. Dado
que los estudiantes tiene varias clases, estas clases
deben ser listados en una tabla separada. Los
campos Clase 1, Clase 2, y Clase 3 en los registros
anteriores son indicios de problemas de diseño.
Las hojas de cálculo suelen usar la tercera dimensión, pero las
tablas no deben. Otra forma de ver este problema es con una
relación uno-a-muchos. Cree otra tabla en la primera forma
normal eliminando el grupo de repetición (clase), como se
muestra a continuación:.

                              Nombre del
                 Estudiante#             Salón    Clase#
                              titular
                              Sr.
                          102 Rodriguez       101 Matemáticas
                              Sr.
                          102 Rodriguez       101 Literatura
                              Sr.
                          102 Rodriguez       101 Química
                              Srita.
                          412 Jimenez         201 Biología
                              Srita.
                          412 Jimenez         201 Geografía
                              Srita.
                          412 Jimenez         201 Cálculo
Segunda forma:
Tome en cuenta los múltiples valores para el campo Clase# por
cada estudiante en la tabla anterior. El campo Clase# no es
dependiente del campo Estudiante# (llave primaria) por lo que
esta relación no esta en la segunda forma normal. Las
siguientes tablas muestran como quedarían con la 2ª forma:

                                              Estudiante#   Clase#

                                                       102 Matemáticas
   Estudiante#   Nombre del titular Salón              102 Literatura
                                                       102 Química
            102 Sr. Rodriguez           101            412 Biología
            412 Srita. Jimenez          201            412 Geografía
                                                       412 Cálculo
Tercera forma normal: eliminar los datos que no dependen de
la llave

En el último ejemplo, salón (salón/grupo asignado al asesor) es
funcionalmente dependiente del atributo titular. La solución es
mover dicho atributo de la tabla Alumnos a la tabla de Facultad,
como se muestra a continuación:

 Estudiante#   Nombre del titular
                                    Nombre del titular Salón     Departamento
          102 Sr. Rodriguez
                                    Sr. Rodriguez          101              A
          412 Srita. Jimenez
                                    Srita. Jimenez         201              B
Preguntas
  ssanchez@informatica.com
http://sesa78.wordpress.com/

Contenu connexe

Tendances

Unidad 1. Fundamentos de Base de Datos
Unidad 1. Fundamentos de Base de DatosUnidad 1. Fundamentos de Base de Datos
Unidad 1. Fundamentos de Base de Datoshugodanielgd
 
Diccionario de datos en los sistemas de información
Diccionario de datos en los sistemas de informaciónDiccionario de datos en los sistemas de información
Diccionario de datos en los sistemas de informaciónYaskelly Yedra
 
Fundamentos de Bases de Datos - Introducción
Fundamentos de Bases de Datos - IntroducciónFundamentos de Bases de Datos - Introducción
Fundamentos de Bases de Datos - IntroducciónManuel Padilla
 
Transformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logicoTransformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logicojosecuartas
 
Modelo Relacional
Modelo RelacionalModelo Relacional
Modelo Relacionalomarzon
 
Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos josecuartas
 
Crear base de datos mysql command
Crear base de datos mysql commandCrear base de datos mysql command
Crear base de datos mysql commandLouis Jhosimar
 
Historia de la tecnologia de base de datos
Historia de la tecnologia de base de datosHistoria de la tecnologia de base de datos
Historia de la tecnologia de base de datosralbarracin
 
Comandos utilizados en sql
Comandos utilizados en sqlComandos utilizados en sql
Comandos utilizados en sqlByron Eras
 
Modelo Relacional (Base de Datos)
Modelo Relacional (Base de Datos)Modelo Relacional (Base de Datos)
Modelo Relacional (Base de Datos)Neguib Núñez
 
Modelo entidad relación de base de datos
Modelo entidad relación de base de datosModelo entidad relación de base de datos
Modelo entidad relación de base de datosani_tuza
 
Sistema De Gestión De Base De Datos
Sistema De Gestión De Base De DatosSistema De Gestión De Base De Datos
Sistema De Gestión De Base De DatosGuillermo Chirinos
 
Modelo entidad relación BD Matriculas
Modelo entidad relación BD MatriculasModelo entidad relación BD Matriculas
Modelo entidad relación BD MatriculasEmerson Garay
 

Tendances (20)

Unidad 1. Fundamentos de Base de Datos
Unidad 1. Fundamentos de Base de DatosUnidad 1. Fundamentos de Base de Datos
Unidad 1. Fundamentos de Base de Datos
 
Diccionario de datos en los sistemas de información
Diccionario de datos en los sistemas de informaciónDiccionario de datos en los sistemas de información
Diccionario de datos en los sistemas de información
 
Fundamentos de Bases de Datos - Introducción
Fundamentos de Bases de Datos - IntroducciónFundamentos de Bases de Datos - Introducción
Fundamentos de Bases de Datos - Introducción
 
Lenguaje SQL
Lenguaje SQLLenguaje SQL
Lenguaje SQL
 
Transformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logicoTransformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logico
 
Modelo Relacional
Modelo RelacionalModelo Relacional
Modelo Relacional
 
Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos
 
Fundamentos de las bases de datos
Fundamentos de las bases de datosFundamentos de las bases de datos
Fundamentos de las bases de datos
 
Sql
SqlSql
Sql
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacional
 
Crear base de datos mysql command
Crear base de datos mysql commandCrear base de datos mysql command
Crear base de datos mysql command
 
Historia de la tecnologia de base de datos
Historia de la tecnologia de base de datosHistoria de la tecnologia de base de datos
Historia de la tecnologia de base de datos
 
Comandos utilizados en sql
Comandos utilizados en sqlComandos utilizados en sql
Comandos utilizados en sql
 
Guia normalización
Guia normalizaciónGuia normalización
Guia normalización
 
Modelo entidad
Modelo entidadModelo entidad
Modelo entidad
 
Modelo Relacional (Base de Datos)
Modelo Relacional (Base de Datos)Modelo Relacional (Base de Datos)
Modelo Relacional (Base de Datos)
 
Modelo entidad relación de base de datos
Modelo entidad relación de base de datosModelo entidad relación de base de datos
Modelo entidad relación de base de datos
 
Sistema De Gestión De Base De Datos
Sistema De Gestión De Base De DatosSistema De Gestión De Base De Datos
Sistema De Gestión De Base De Datos
 
Bases de datos orientadas a objetos
Bases de datos orientadas a objetosBases de datos orientadas a objetos
Bases de datos orientadas a objetos
 
Modelo entidad relación BD Matriculas
Modelo entidad relación BD MatriculasModelo entidad relación BD Matriculas
Modelo entidad relación BD Matriculas
 

En vedette

Dependencias Funcionales en Bases de Datos
Dependencias Funcionales en Bases de DatosDependencias Funcionales en Bases de Datos
Dependencias Funcionales en Bases de DatosEsteban Andres Diaz Mina
 
Gestión de los costos del proyecto
Gestión de los costos del proyectoGestión de los costos del proyecto
Gestión de los costos del proyectoLuis Sanchez
 
Normalización de la base de datos (3 formas normales)
Normalización de la base de datos (3 formas normales)Normalización de la base de datos (3 formas normales)
Normalización de la base de datos (3 formas normales)michell_quitian
 
Qué Son Las Bases De Datos
Qué Son Las Bases De DatosQué Son Las Bases De Datos
Qué Son Las Bases De DatosMarichelo Gómez
 
Diapositivas sobre BD (Base de Datos)
Diapositivas sobre BD (Base de Datos)Diapositivas sobre BD (Base de Datos)
Diapositivas sobre BD (Base de Datos)angeljlp08
 

En vedette (9)

normalizacion base de datos
normalizacion base de datosnormalizacion base de datos
normalizacion base de datos
 
Dependencias Funcionales en Bases de Datos
Dependencias Funcionales en Bases de DatosDependencias Funcionales en Bases de Datos
Dependencias Funcionales en Bases de Datos
 
Gestión de los costos del proyecto
Gestión de los costos del proyectoGestión de los costos del proyecto
Gestión de los costos del proyecto
 
Normalización de la base de datos (3 formas normales)
Normalización de la base de datos (3 formas normales)Normalización de la base de datos (3 formas normales)
Normalización de la base de datos (3 formas normales)
 
Base de datos
Base de datosBase de datos
Base de datos
 
Guía de ejercicios de normalizacion
Guía de ejercicios de normalizacionGuía de ejercicios de normalizacion
Guía de ejercicios de normalizacion
 
Bases De Datos "Conceptos Basicos"
Bases De Datos "Conceptos Basicos"Bases De Datos "Conceptos Basicos"
Bases De Datos "Conceptos Basicos"
 
Qué Son Las Bases De Datos
Qué Son Las Bases De DatosQué Son Las Bases De Datos
Qué Son Las Bases De Datos
 
Diapositivas sobre BD (Base de Datos)
Diapositivas sobre BD (Base de Datos)Diapositivas sobre BD (Base de Datos)
Diapositivas sobre BD (Base de Datos)
 

Similaire à Normalizacion de base de datos (20)

Normalizacion Base de Datos
Normalizacion Base de DatosNormalizacion Base de Datos
Normalizacion Base de Datos
 
Normalizaciondb 120828230415-phpapp01
Normalizaciondb 120828230415-phpapp01Normalizaciondb 120828230415-phpapp01
Normalizaciondb 120828230415-phpapp01
 
Clase4
Clase4Clase4
Clase4
 
Tercera forma normal
Tercera forma normalTercera forma normal
Tercera forma normal
 
Reglas de codd y normalizacion
Reglas de codd y normalizacionReglas de codd y normalizacion
Reglas de codd y normalizacion
 
Bases de datos 16112009
Bases de datos 16112009Bases de datos 16112009
Bases de datos 16112009
 
Normalizacion de Base de datos,
Normalizacion de Base de datos, Normalizacion de Base de datos,
Normalizacion de Base de datos,
 
CLASE 3.ppt
CLASE 3.pptCLASE 3.ppt
CLASE 3.ppt
 
Normalizacion
NormalizacionNormalizacion
Normalizacion
 
Normalizacion
NormalizacionNormalizacion
Normalizacion
 
DOCI2019-GRUPO4
DOCI2019-GRUPO4DOCI2019-GRUPO4
DOCI2019-GRUPO4
 
Normalización 1 fn,2fn,3fn,4fn,
Normalización 1 fn,2fn,3fn,4fn,Normalización 1 fn,2fn,3fn,4fn,
Normalización 1 fn,2fn,3fn,4fn,
 
5 cientifico-martes-19
5 cientifico-martes-195 cientifico-martes-19
5 cientifico-martes-19
 
Plantilla 903 icontec
Plantilla 903 icontecPlantilla 903 icontec
Plantilla 903 icontec
 
Introducción a Bases de Datos
Introducción a Bases de DatosIntroducción a Bases de Datos
Introducción a Bases de Datos
 
Normalizacion
NormalizacionNormalizacion
Normalizacion
 
Plantilla 903 icontec
Plantilla 903 icontecPlantilla 903 icontec
Plantilla 903 icontec
 
Normalizacin De Una Base De Datos
Normalizacin De Una Base De DatosNormalizacin De Una Base De Datos
Normalizacin De Una Base De Datos
 
POOABD (POO Aplicada a B Datos) - RDBMS parte 2
POOABD (POO Aplicada a B Datos) - RDBMS parte 2POOABD (POO Aplicada a B Datos) - RDBMS parte 2
POOABD (POO Aplicada a B Datos) - RDBMS parte 2
 
Normalizacion de tablas
Normalizacion de tablasNormalizacion de tablas
Normalizacion de tablas
 

Plus de Sergio Sanchez

Plus de Sergio Sanchez (6)

Que es big data
Que es big dataQue es big data
Que es big data
 
Calidad de datos (data quality)
Calidad de datos (data quality)Calidad de datos (data quality)
Calidad de datos (data quality)
 
Que es slowly change dimension?
Que es slowly change dimension?Que es slowly change dimension?
Que es slowly change dimension?
 
Data quality
Data qualityData quality
Data quality
 
Data subset
Data subsetData subset
Data subset
 
Data masking
Data maskingData masking
Data masking
 

Dernier

pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfvladimiroflores1
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfAnnimoUno1
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 

Dernier (11)

pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 

Normalizacion de base de datos

  • 2. ¿Que es normalización?  Normalización de una base de datos  Grados de normalización: Primera Forma  Grados de normalización: Segunda Forma  Grados de normalización: Tercera Forma  Otras formas de normalización  Ejemplo
  • 3. Normalización es el proceso de organizar de manera eficiente los datos dentro de una base de datos. Esto incluye la creación de tablas y el establecimiento de relaciones entre ellas según reglas pre-diseñadas tanto para proteger los datos y la base de datos, como para hacer más flexible al eliminar la redundancia y dependencia incoherente.
  • 4. Los principales objetivos de la normalización son: ◦ La eliminación de datos redundantes, los cuales ocupan mas espacio en disco y crean problemas de mantenimiento; por ejemplo, cambio de la dirección del cliente es mucho más fácil de implementar si los datos se almacenan sólo en la tabla Clientes y en ninguna otra base de datos. ◦ Evitar problemas de actualización de los datos en las tablas. ◦ Garantizar que las dependencias que tienen los datos entre ellos, sean lógicas y presenten algún sentido.
  • 5. Estos puntos reducen la cantidad de espacio en la base de datos y aseguran que estos son almacenados de manera lógica (integridad).  La normalización también se puede entender como el proceso mediante el cual se transforman datos complejos a un conjunto de estructuras de datos más pequeñas, que además de ser más simples y más estables, son más fáciles de mantener.
  • 6. Existen algunas reglas para la normalización de bases de datos. Cada regla se denomina "forma normal". Si dentro de la base de datos se observa la primera regla se dice que está en "primera forma normal". Si las tres primeras reglas se observan, la base de datos se considera en "tercera forma normal". Aunque es posible tener otros niveles de normalización, la tercera forma normal es considerado el más alto nivel necesario para la mayoría de aplicaciones.
  • 7. Como ocurre con muchas reglas y especificaciones, en la vida real no siempre es factible el cumplimiento de estas. En general, la normalización requiere tablas adicionales y para algunos clientes esto es engorroso. Si se decide violar una de las tres primeras reglas de normalización, tenga por seguro que su aplicación presentara problemas, como los datos redundantes y dependencias incoherentes.
  • 8. Los principales objetivos son:  Eliminar grupos de datos repetidos en tablas individuales.  Crear una tabla separada para cada conjunto de datos relacionados.  Identifique cada conjunto de datos relacionados con una clave principal. Ejemplo ID, Primary Key, FK.
  • 9. No utilizar varios campos en una sola tabla para almacenar datos similares. Por ejemplo, para el seguimiento de un artículo del inventario que proviene de dos fuentes diferentes, el registro puede contener campos para el código de proveedor 1 y un código de proveedor 2. ¿Qué sucede cuando se agrega un tercer proveedor? Agregar un campo no es la respuesta, ya que requiere de programación y modificación de tablas y la necesidad de repetirlo cada vez que se agregué a un nuevo proveedor. En su lugar, se deberá poner toda la información del proveedor en una tabla independiente denominada Proveedores, y vincular el inventario con los proveedores por medio de una clave o de sus claves.
  • 10. Los principales objetivos son:  Crear tablas separadas para aquellos conjuntos de valores que se aplican a varios registros. Ejemplo ciudades, profesión.  Relacionar estas tablas por medio de una clave externa, ejemplo ID, Primary Key, FK.
  • 11. Los registros no deben depender de nada que no sea la clave primaria de una tabla (una clave compuesta, si es necesario). Por ejemplo, consideremos la dirección de un cliente en un sistema contable. La dirección no solo se necesita en la tabla de clientes, sino también para los pedidos, envío, facturas, cuentas por cobrar, e inclusive en las ordenes. En lugar de almacenar la dirección del cliente como una entrada independiente en cada una de estas tablas, guárdela en un lugar, ya sea en la tabla Clientes o en una tabla de direcciones separada.
  • 12. Los principales objetivos son:  Eliminar los campos que no dependan de las claves. Los valores de un registro que no forman parte de la clave de registro no tienen cabida en la tabla. Por ejemplo, en una tabla que contiene los datos de los candidatos a un puesto, el nombre del candidato, nombre de la universidad a la que asistió y la dirección pueden estar incluidos. Pero existen muchas universidades. Si la información de la universidad se almacena en la tabla de candidatos, no hay manera de listar las universidades que no tengan candidatos. La mejor opción es crear una tabla separada de Universidades y vincularlo a la tabla Candidatos con una llave de código de la universidad.
  • 13. Cuarta forma normal, también llamada Boyce Codd Forma Normal (FNBC), y quinta forma normal, existen, pero rara vez se consideran en el diseño práctico. Haciendo caso omiso de estas reglas puede resultar en menos de diseño de base de datos perfecto, pero no debería afectar a la funcionalidad.
  • 14. Aquí se muestra la normalización de una tabla de estudiantes. Nombre del Estudiante# Salón Clase1 Clase2 Clase3 titular Sr. 102 Rodriguez 101 Matemáticas Literatura Química Srita. 412 Jimenez 201 Biología Geografía Cálculo
  • 15. Se aplica la primera forma. Las tablas deben tener sólo dos dimensiones. Dado que los estudiantes tiene varias clases, estas clases deben ser listados en una tabla separada. Los campos Clase 1, Clase 2, y Clase 3 en los registros anteriores son indicios de problemas de diseño.
  • 16. Las hojas de cálculo suelen usar la tercera dimensión, pero las tablas no deben. Otra forma de ver este problema es con una relación uno-a-muchos. Cree otra tabla en la primera forma normal eliminando el grupo de repetición (clase), como se muestra a continuación:. Nombre del Estudiante# Salón Clase# titular Sr. 102 Rodriguez 101 Matemáticas Sr. 102 Rodriguez 101 Literatura Sr. 102 Rodriguez 101 Química Srita. 412 Jimenez 201 Biología Srita. 412 Jimenez 201 Geografía Srita. 412 Jimenez 201 Cálculo
  • 17. Segunda forma: Tome en cuenta los múltiples valores para el campo Clase# por cada estudiante en la tabla anterior. El campo Clase# no es dependiente del campo Estudiante# (llave primaria) por lo que esta relación no esta en la segunda forma normal. Las siguientes tablas muestran como quedarían con la 2ª forma: Estudiante# Clase# 102 Matemáticas Estudiante# Nombre del titular Salón 102 Literatura 102 Química 102 Sr. Rodriguez 101 412 Biología 412 Srita. Jimenez 201 412 Geografía 412 Cálculo
  • 18. Tercera forma normal: eliminar los datos que no dependen de la llave En el último ejemplo, salón (salón/grupo asignado al asesor) es funcionalmente dependiente del atributo titular. La solución es mover dicho atributo de la tabla Alumnos a la tabla de Facultad, como se muestra a continuación: Estudiante# Nombre del titular Nombre del titular Salón Departamento 102 Sr. Rodriguez Sr. Rodriguez 101 A 412 Srita. Jimenez Srita. Jimenez 201 B