normalización
DESCRIPTION
Este documento presenta una introcción a la normalización y las primeras 5 reglas formales.TRANSCRIPT
La NormalizaciónLa NormalizaciónUna práctica recomendable sobre bases de Una práctica recomendable sobre bases de
datosdatos
Una visión generalUna visión general
Julián Esteban Gutiérrez PosadaJulián Esteban Gutiérrez PosadaJorge Iván Triviño ArbelaezJorge Iván Triviño Arbelaez
Universidad del QuindíoUniversidad del QuindíoOctubre 19 de 2005Octubre 19 de 2005
Jugutier - Octubre 2005Jugutier - Octubre 2005 22
AgendaAgendaI.I. Conceptos básicos de bases de datosConceptos básicos de bases de datos
II.II. NormalizaciónNormalización1.1. Primera forma normal Primera forma normal (1NF)(1NF)2.2. Segunda forma normal Segunda forma normal (2NF)(2NF)3.3. Tercera forma normal Tercera forma normal (3NF)(3NF)4.4. Cuarta forma normal Cuarta forma normal (4NF)(4NF)5.5. Quinta forma normal Quinta forma normal (5NF)(5NF)
Jugutier - Octubre 2005Jugutier - Octubre 2005 44
¿Qué es una base de datos?¿Qué es una base de datos?Una Una
base de datosbase de datos es un es un
conjunto de datos conjunto de datos interrelacionadosinterrelacionados, ,
que estánque estánalmacenados almacenados
con unacon una estructura lógica y estructura lógica y
tienetiene un un significadosignificado inherenteinherente
Jugutier - Octubre 2005Jugutier - Octubre 2005 55
¿Qué es importante en una ¿Qué es importante en una BD?BD?
En una En una base de datosbase de datos
son tanson tanimportantesimportantes
los los datos datos
como la como la estructura estructura
conceptualconceptual con la que con la que ellosellos se se
relacionan.relacionan.
Jugutier - Octubre 2005Jugutier - Octubre 2005 66
¿Cuál es la función de una ¿Cuál es la función de una BD?BD?
La función La función de las de las
bases de datosbases de datos Es permitir Es permitir
gestionar y manipulargestionar y manipular lala
información información de forma de forma
automatizada y automatizada y estructuradaestructurada
Jugutier - Octubre 2005Jugutier - Octubre 2005 77
¿Qué tipos de bases de datos ¿Qué tipos de bases de datos hay?hay?
Los principales tipos de bases de datos Los principales tipos de bases de datos son:son:
BD jerárquicasBD jerárquicasBD en redBD en redBD orientadas a objetosBD orientadas a objetosDB relacionalesDB relacionales
(el más utilizado actualmente)(el más utilizado actualmente)
Jugutier - Octubre 2005Jugutier - Octubre 2005 88
¿En qué se basa una BD ¿En qué se basa una BD relacional?relacional?
Una DB relacional se basa Una DB relacional se basa en:en:
Entidades (tablas)Entidades (tablas) RelacionesRelaciones
Tuplas (Registros)Tuplas (Registros)
Atributos (Campos)Atributos (Campos) Tipo de datoTipo de dato RestriccionesRestricciones
LlavesLlaves Llave primariaLlave primaria Llave foráneaLlave foránea Llave alterna o Llave alterna o
candidatascandidatas
..................Dato 2 3Dato 2 3Dato 2 2Dato 2 2Dato 2 1Dato 2 1Dato 1 3Dato 1 3Dato 1 2Dato 1 2Dato 1 1Dato 1 1
Campo 3Campo 3Campo 2Campo 2Campo 1Campo 1Tabla 1
............Dato 2Dato 2Llave 2Llave 2Dato 1Dato 1Llave 1Llave 1
Campo 1Campo 1LlaveLlaveTabla 2
Jugutier - Octubre 2005Jugutier - Octubre 2005 99
¿Qué hay que tener en cuenta ¿Qué hay que tener en cuenta para crear una DB Relacional?para crear una DB Relacional?
PrincipalmentPrincipalmentee
la forma de la forma de almacenar almacenar
la la información.información.
ParaParaevitar evitar
laslasinconsistencias inconsistencias yy
redundanciasredundanciasen losen losdatosdatos
¿Cómo lo ¿Cómo lo garantizo?garantizo?
Normalizando la BDNormalizando la BD
Jugutier - Octubre 2005Jugutier - Octubre 2005 1111
Ejemplo de un conjunto de Ejemplo de un conjunto de datosdatos
PersonaPersonanombrenombre edaeda
ddnacionalidnacionalid
adadcoloresFavoritos coloresFavoritos estadoEmotividestadoEmotivid
adadJuan CarlosJuan Carlos 2323 ColombianoColombiano Rojo, Azul, BlancoRojo, Azul, Blanco AlegreAlegreMaria del Maria del
PilarPilar3131 BrasileroBrasilero Negro, BlancoNegro, Blanco NormalNormal
CatherineCatherine 1919 CanadienseCanadiense Rojo, Blanco, CianRojo, Blanco, Cian AlegreAlegreMario Mario
AlbertoAlberto2828 BrasileroBrasilero RojoRojo DeprimidoDeprimido
¿Qué opina sobre este conjunto de datos?
1. Primera forma normal 1. Primera forma normal (1FN)(1FN)
• El valor de cada atributo debe ser atómico (no El valor de cada atributo debe ser atómico (no multivaluados)multivaluados)• Cada registro tiene un identificador únicoCada registro tiene un identificador único
La regla de la Primera Forma Normal establece que todo registro debe estar
identificado de manera única
Jugutier - Octubre 2005Jugutier - Octubre 2005 1313
Primera forma normal (1NF)Primera forma normal (1NF)
PersonaPersonaIDID NombreNombre edaeda
ddnacionalidanacionalida
ddcolor1color1 color2color2 color3 color3 estadoEmotividestadoEmotivid
adad11 Juan Juan
CarlosCarlos2323 ColombianoColombiano RojoRojo AzulAzul BlancoBlanco AlegreAlegre
33 Maria del Maria del PilarPilar
3131 BrasileroBrasilero NegroNegro BlancoBlanco NormalNormal
77 CatherineCatherine 1919 CanadienseCanadiense RojoRojo BlancoBlanco CianCian AlegreAlegre88 Mario Mario
AlbertoAlberto2828 BrasileroBrasilero RojoRojo DeprimidoDeprimido
¿Qué opina ahora sobre este conjunto de datos?
2. Segunda forma 2. Segunda forma normal (2FN)normal (2FN)
• Debe estar en 1NFDebe estar en 1NF• Todos los campos no llave primaria dependan Todos los campos no llave primaria dependan directamente de la llave primaria (no de una parte)directamente de la llave primaria (no de una parte)• Los atributos son funcionalmente dependientes de la Los atributos son funcionalmente dependientes de la llave primariallave primaria•Relacionar estas tablas mediante llaves foráneas.Relacionar estas tablas mediante llaves foráneas.
La regla de la Segunda Forma Normal establece que los atributos que no
dependan funcionalmente de la llave primaria deben ir en otra tabla
relacionada
Jugutier - Octubre 2005Jugutier - Octubre 2005 1515
Segunda forma normal (2NF)Segunda forma normal (2NF)PersonaPersona
idPersonidPersonaa
nombrenombre edaedadd
nacionalidnacionalidadad
idEestadidEestadoo
11 Juan CarlosJuan Carlos 2323 ColombianoColombiano 808033 Maria del Maria del
PilarPilar3131 BrasileroBrasilero 8383
77 CatherineCatherine 1919 CanadienseCanadiense 808088 Mario Mario
AlbertoAlberto2828 BrasileroBrasilero 8585
¿Qué opina ahora sobre este conjunto de datos?
EstadoEmotividadEstadoEmotividadidEstadidEstad
ooestadoEmotividestadoEmotivid
adad8080 AlegreAlegre8383 NormalNormal8585 DeprimidoDeprimido
ColorFavoritoColorFavoritoidPersonaidPersona colorcolor
11 RojoRojo11 AzulAzul11 BlancoBlanco33 NegroNegro33 BlancoBlanco77 RojoRojo77 BlancoBlanco77 CianCian88 RojoRojo
3. Tercera forma normal 3. Tercera forma normal (3FN)(3FN)
• Debe estar en 2NFDebe estar en 2NF• Los atributos no llave deben ser independientes entre si, Los atributos no llave deben ser independientes entre si,
solo dependen de la llave primariasolo dependen de la llave primaria• Los atributos dependen de forma no transitiva de la Los atributos dependen de forma no transitiva de la
llave primariallave primaria
La regla de la Tercera Forma Normal elimina las dependencias transitivas,
todos los atributos solo dependen de la llave primaria
Jugutier - Octubre 2005Jugutier - Octubre 2005 1717
Tercera forma normal (3NF)Tercera forma normal (3NF)PersonaPersona
idPersonidPersonaa
nombrenombre edaedadd
idNaidNacc
idEestadidEestadoo
11 Juan CarlosJuan Carlos 2323 9494 808033 Maria del Maria del
PilarPilar3131 9797 8383
77 CatherineCatherine 1919 9898 808088 Mario Mario
AlbertoAlberto2828 9797 8585
¿Qué opina ahora sobre este conjunto de datos?
EstadoEmotividadEstadoEmotividadidEstadidEstad
ooestadoEmotividestadoEmotivid
adad8080 AlegreAlegre8383 NormalNormal8585 DeprimidoDeprimidoPersonaColorPersonaColor
idPersonaidPersona colorcolor11 RojoRojo11 AzulAzul11 BlancoBlanco33 NegroNegro33 BlancoBlanco77 RojoRojo77 BlancoBlanco77 CianCian88 RojoRojo
NacionalidadNacionalidadidNaidNa
ccnacionalidadnacionalidad
9494 ColombianoColombiano9797 BrasileroBrasilero9898 CanadienseCanadiense
4. Cuarta forma normal 4. Cuarta forma normal (4FN)(4FN)
• Debe estar en 3NFDebe estar en 3NF• En relaciones varios-varios, entidades independientes no En relaciones varios-varios, entidades independientes no
pueden ser almacenadas en la misma tablapueden ser almacenadas en la misma tabla• No existe mas de un atributo que permita múltiples No existe mas de un atributo que permita múltiples
valoresvalores
La regla de la Cuarta Forma Normal establece que los atributos no puden haber varios campos multivaluados
Jugutier - Octubre 2005Jugutier - Octubre 2005 1919
Cuarta forma normal (4NF)Cuarta forma normal (4NF)PersonaPersona
idPersonidPersonaa
nombrenombre edaedadd
idNaidNacc
idEestadidEestadoo
11 Juan CarlosJuan Carlos 2323 9494 808033 Maria del Maria del
PilarPilar3131 9797 8383
77 CatherineCatherine 1919 9898 808088 Mario Mario
AlbertoAlberto2828 9797 8585
¿Qué opina ahora sobre este conjunto de datos?
ColorColoridColoidColo
rrColoColo
rr7171 RojoRojo7373 AzulAzul7676 BlancBlanc
oo7878 NegrNegr
oo7979 CianCian
EstadoEmotividadEstadoEmotividadidEstadidEstad
ooestadoEmotividestadoEmotivid
adad8080 AlegreAlegre8383 NormalNormal8585 DeprimidoDeprimidoPersonaColorPersonaColor
idPersonaidPersona idColoridColor11 717111 737311 767633 787833 767677 717177 767677 797988 7171
NacionalidadNacionalidadidNaidNa
ccnacionalidadnacionalidad
9494 ColombianoColombiano9797 BrasileroBrasilero9898 CanadienseCanadiense
5. Quinta forma normal 5. Quinta forma normal (5FN)(5FN)
• La información de la Tabla no puede ser reconstruida a La información de la Tabla no puede ser reconstruida a partir de varios registros más pequeñas con llaves partir de varios registros más pequeñas con llaves diferentes.diferentes.
• Un registro no puede estar estructurado tal que su Un registro no puede estar estructurado tal que su contenido pueda reconstruirse a partir de otros más contenido pueda reconstruirse a partir de otros más pequeños.pequeños.
La regla de la Quinta Forma Normal establece que lastablas y registros no
pueden ser reconstruidos por otros