SlideShare una empresa de Scribd logo
Normalización
del esquema
relacional
Normalización del esquema relacional
1. Normalización
Cuando trabajamos con una base de datos relacional, los esquemas de las distintas relaciones que
la constituyen nos indican que “cada dato tiene su lugar”. Pero, ¿qué ocurre si se modifican estas
estructuras lógicas? . Muchas veces es tan obvio que un dato debe de almacenarse en una de las
relaciones y no en otra que se nos escapa la respuesta a porqué es así.
Concepto:
La teoría de la normalización es en esencia una expresión formal de ideas
sencillas con una aplicación muy práctica en el área del diseño de bases de
datos, ya que conducen a una correcta elección del esquema de la base de
datos.
Es la simplificación de los datos dentro de los campos de registro, este proceso lo considero
importante ya que nos ayuda a dejar datos en estado demasiado simple de una forma entendible
precisa, predecible y manejable. La normalización permite estructurar datos de forma precisa
para representar las relaciones necesarias entre los campos de un registro, también permite la
recuperación de datos sencillos que se pierden al realizar consultas y reportes.
Visión de la Teoría de Normalización
Las bases de datos relacionales se normalizan para:
 Evitar la redundancia de los datos.
 Evitar problemas de actualización de los datos en las tablas.
 Proteger la integridad de los datos.
Hablaremos de las 3 primeras formas de normalización básica para el diseño de una base de
datos.
Normalización del esquema relacional
1.1 PRIMERA FORMA NORMAL (1FN)
Una relación está en primera forma normal si y sólo si todos los dominios simples
subyacentes contienen sólo valores atómicos.
Un dominio es atómico si se considera que los elementos del dominio son unidades
indivisibles
La regla de la 1FN establece que las columnas repetidas deben eliminarse y colocarse
en tablas separadas.
La regla de la Primera Forma Normal establece que las columnas repetidas deben eliminarse y
colocarse en tablas separadas.
La primera formal normal se definió para prohibir los atributos multivalorados, los atributos
compuestos y sus combinaciones
Cuando un esquema de relación no está en primera forma normal, se divide en otros esquemas de
relación, repartiendo sus atributos entre los resultantes
 Se elimina el (los) atributo(s) que viola(n) la 1FN del esquema original
 Se coloca el (los) atributo(s) que viola(n) la 1FN en un esquema aparte junto con la
clave principal del esquema de partida
Ejemplo1:
Biblioteca = (cod_libro, titulo, autor, editorial, nombre_lector, fecha_dev)
Resultado de aplicar 1FN:
Biblioteca = (cod_libro, titulo, autor, editorial, apellido_paterno, apellido_materno,
nombres, fecha_dev)
Ejemplo2:
Ordenes = (id_orden, fecha, id_cliente, nombre_cliente, provincia, numero_item,
descripcion_item, cantidad, precio)
Resultado de aplicar 1FN
Ordenes = (id_orden, fecha, id_cliente, nombre_cliente, provincia)
Pedidos = (id_pedido, numero_item, descripcion_item, cantidad, precio)
Normalización del esquema relacional
1.2 SEGUNDA FORMA NORMA (2FN)
Una relación está en segunda forma normal si y sólo si está en 1FN y todos los
atributos no clave dependen por completo de cualquier clave candidata.
La regla de la Segunda Forma Normal establece que todas las dependencias parciales se deben
eliminar y separar dentro de sus propias tablas. Una dependencia parcial es un término que
describe a aquellos datos que no dependen de la llave primaria de la tabla para identificarlos.
La Segunda Forma Normal (2NF) pide que no existan dependencias parciales o dicho de otra
manera, todos los a tributos no clave deben depender por completo de la clave primaria.
Ejemplo1:
Biblioteca = (cod_libro, titulo, autor, editorial, apellido_paterno, apellido_materno,
nombres, fecha_dev)
Resultado de aplicar 2FN:
Libro = (cod_libro, titulo, autor, editorial)
Lector = (cod_lector, apellido_paterno, apellido_materno, nombres)
Préstamo = (cod_libro, cod_lector, fecha_dev)
Ejemplo2:
Ordenes = (id_orden, fecha, id_cliente, nombre_cliente, provincia)
Pedidos = (id_pedido, numero_item, descripcion_item, cantidad, precio)
Resultado de aplicar 2FN
Ordenes = (id_orden, fecha, id_cliente, nombre_cliente, provincia)
Pedidos = (id_pedido, numero_item, cantidad)
Artículos = (numero_item, descripcion_item, precio)
Normalización del esquema relacional
1.3 TERCERA FORMA NORMA (3FN)
Una relación está en tercera forma normal si y sólo si está en 2FN y además cada
atributo del esquema de relación que no está en la clave primaria sólo depende
funcionalmente de la clave primaria, y no de ningún otro atributo
Una tabla está normalizada en esta forma si todas las columnas que no son llave son
funcionalmente dependientes por completo de la llave primaria y no hay dependencias
transitivas.
Una dependencia transitiva es aquella en la cual existen columnas que no son llave que dependen
de otras columnas que tampoco son llave.
Ejemplo1:
Libro = (cod_libro, titulo, autor, editorial)
Lector = (cod_lector, apellido_paterno, apellido_materno, nombres)
Préstamo = (cod_libro, cod_lector, fecha_dev)
Resultado de aplicar 3FN:
Libro = (cod_libro, titulo)
Autor = (cod_autor, autor)
Editorial = (cod_editorial, editorial)
Aunque hemos creado nuevas tablas para que cada una tenga sólo información acerca
de una entidad, también hemos perdido la información acerca de qué autor ha escrito
qué libro y las editoriales correspondientes, por lo que debemos crear otras tablas que
relacionen cada libro con sus autores y editoriales.
Libro_Autor = (cod_libro, cod_autor)
Libro_Editorial = (cod_libro, cod_editorial)
Lector = (Cod_Lector, Apellido_Paterno, Apellido_Materno, Nombres)
Préstamo = (Cod_Libro, Cod_Lector, Fecha_Dev)
Ejemplo2:
Ordenes = (id_orden, fecha, id_cliente, nombre_cliente, provincia)
Pedidos = (id_pedido, numero_item, cantidad)
Artículos = (numero_item, descripcion_item, precio)
Normalización del esquema relacional
Ordenes = (id_orden, fecha, id_cliente, nombre_cliente, provincia)
Pedidos = (id_orden, numero_item, cantidad)
Articulos = (numero_item, descripcion_item, precio)
Resultado de aplicar 3FN
Ordenes = (id_orden, fecha, id_cliente)
Clientes = (id_cliente, nombre_cliente, provincia)
Pedidos = (id_orden, numero_item, cantidad)
Articulos = (numero_item, descripcion_item, precio)
1.4 Resumen
En la tabla siguiente se describe brevemente en que consiste cada una de las reglas, y
posteriormente se explican con más detalle.
Regla Descripción
Primera Forma Normal (1FN) Incluye la eliminación de todos los grupos repetidos.
Segunda Forma Normal (2FN)
Asegura que todas las columnas que no son llave sean
completamente dependientes de la llave primaria.
Tercera Forma Normal (3FN)
Elimina cualquier dependencia transitiva. Una dependencia
transitiva es aquella en la cual las columnas que no son llave
son dependientes de otras columnas que tampoco son llave.

Más contenido relacionado

Destacado

Noicattaro. 2 comunicato pd uscita liturri e sportelli
Noicattaro. 2 comunicato pd uscita liturri e sportelliNoicattaro. 2 comunicato pd uscita liturri e sportelli
Noicattaro. 2 comunicato pd uscita liturri e sportelli
Redazione Noicattaro Web
 
Περιφερειακή επιχειρηματικότητα & Οικονομία
Περιφερειακή επιχειρηματικότητα & ΟικονομίαΠεριφερειακή επιχειρηματικότητα & Οικονομία
Περιφερειακή επιχειρηματικότητα & Οικονομία
EpomeniMera Oloi Mazi
 
Presentazione della lista "Cavalli sindaco - per cambiare"
Presentazione della lista "Cavalli sindaco - per cambiare"Presentazione della lista "Cavalli sindaco - per cambiare"
Presentazione della lista "Cavalli sindaco - per cambiare"
Albe16
 
Bazaar Rendering 1
Bazaar Rendering 1Bazaar Rendering 1
Bazaar Rendering 1
rgwag
 
Tiffany Munson In Cosmic Art March 7 Th 2010
Tiffany Munson In Cosmic Art March 7 Th 2010Tiffany Munson In Cosmic Art March 7 Th 2010
Tiffany Munson In Cosmic Art March 7 Th 2010guest57dd7c
 
Lesoutilsduweb2 abf
Lesoutilsduweb2 abfLesoutilsduweb2 abf
Lesoutilsduweb2 abf
Sophie C.
 
PROYECTO INTEGRADOR III
PROYECTO INTEGRADOR IIIPROYECTO INTEGRADOR III
PROYECTO INTEGRADOR III
pandreagv
 
Atrévete1
Atrévete1Atrévete1
Atrévete1
NoeAlcantara
 
Decreto n° 43
Decreto n° 43 Decreto n° 43
Decreto n° 43
Maria Vaudo
 
00 executive summary 12-19-141
00 executive summary 12-19-14100 executive summary 12-19-141
00 executive summary 12-19-141
Glauco Tabacco
 
Recaudación por cuaderno para padre chayle
Recaudación por cuaderno   para padre chayleRecaudación por cuaderno   para padre chayle
Recaudación por cuaderno para padre chaylecarlos ariel peralta
 
Pintura Corporal
Pintura CorporalPintura Corporal
Pintura CorporalBiaEsteves
 
000 executive summary 12-19-141
000 executive summary 12-19-141000 executive summary 12-19-141
000 executive summary 12-19-141Glauco Tabacco
 
師大單車社——三百年騎郁記
師大單車社——三百年騎郁記師大單車社——三百年騎郁記
師大單車社——三百年騎郁記
National Youth Commission
 
Tecnologaindustrialii 090613052109-phpapp01
Tecnologaindustrialii 090613052109-phpapp01Tecnologaindustrialii 090613052109-phpapp01
Tecnologaindustrialii 090613052109-phpapp01Michael Maiquema
 
Uscire dalla crisi
Uscire dalla crisiUscire dalla crisi
Uscire dalla crisi
tramerper
 

Destacado (19)

Pdf 1° giorn. trasp.
Pdf   1° giorn. trasp.Pdf   1° giorn. trasp.
Pdf 1° giorn. trasp.
 
Noicattaro. 2 comunicato pd uscita liturri e sportelli
Noicattaro. 2 comunicato pd uscita liturri e sportelliNoicattaro. 2 comunicato pd uscita liturri e sportelli
Noicattaro. 2 comunicato pd uscita liturri e sportelli
 
Practica 2
Practica 2Practica 2
Practica 2
 
Περιφερειακή επιχειρηματικότητα & Οικονομία
Περιφερειακή επιχειρηματικότητα & ΟικονομίαΠεριφερειακή επιχειρηματικότητα & Οικονομία
Περιφερειακή επιχειρηματικότητα & Οικονομία
 
Presentazione della lista "Cavalli sindaco - per cambiare"
Presentazione della lista "Cavalli sindaco - per cambiare"Presentazione della lista "Cavalli sindaco - per cambiare"
Presentazione della lista "Cavalli sindaco - per cambiare"
 
Bazaar Rendering 1
Bazaar Rendering 1Bazaar Rendering 1
Bazaar Rendering 1
 
Tiffany Munson In Cosmic Art March 7 Th 2010
Tiffany Munson In Cosmic Art March 7 Th 2010Tiffany Munson In Cosmic Art March 7 Th 2010
Tiffany Munson In Cosmic Art March 7 Th 2010
 
Lesoutilsduweb2 abf
Lesoutilsduweb2 abfLesoutilsduweb2 abf
Lesoutilsduweb2 abf
 
Cindy Hilliard
Cindy HilliardCindy Hilliard
Cindy Hilliard
 
PROYECTO INTEGRADOR III
PROYECTO INTEGRADOR IIIPROYECTO INTEGRADOR III
PROYECTO INTEGRADOR III
 
Atrévete1
Atrévete1Atrévete1
Atrévete1
 
Decreto n° 43
Decreto n° 43 Decreto n° 43
Decreto n° 43
 
00 executive summary 12-19-141
00 executive summary 12-19-14100 executive summary 12-19-141
00 executive summary 12-19-141
 
Recaudación por cuaderno para padre chayle
Recaudación por cuaderno   para padre chayleRecaudación por cuaderno   para padre chayle
Recaudación por cuaderno para padre chayle
 
Pintura Corporal
Pintura CorporalPintura Corporal
Pintura Corporal
 
000 executive summary 12-19-141
000 executive summary 12-19-141000 executive summary 12-19-141
000 executive summary 12-19-141
 
師大單車社——三百年騎郁記
師大單車社——三百年騎郁記師大單車社——三百年騎郁記
師大單車社——三百年騎郁記
 
Tecnologaindustrialii 090613052109-phpapp01
Tecnologaindustrialii 090613052109-phpapp01Tecnologaindustrialii 090613052109-phpapp01
Tecnologaindustrialii 090613052109-phpapp01
 
Uscire dalla crisi
Uscire dalla crisiUscire dalla crisi
Uscire dalla crisi
 

Similar a 4. normalización

Normalizacion de bases de datos relacionales.docx
Normalizacion de bases de datos relacionales.docxNormalizacion de bases de datos relacionales.docx
Normalizacion de bases de datos relacionales.docx
a e
 
Base de datos
Base de datosBase de datos
Base de datos
marcia666
 
Postgresql
PostgresqlPostgresql
Postgresql
PostgresqlPostgresql
Postgresql
jbersosa
 
Examen de recuperacion Betriz Cruz Granados
Examen de recuperacion Betriz Cruz GranadosExamen de recuperacion Betriz Cruz Granados
Examen de recuperacion Betriz Cruz GranadosBety Cruz
 
Examen de recuperacion maestra yolanda
Examen de recuperacion maestra yolandaExamen de recuperacion maestra yolanda
Examen de recuperacion maestra yolandaBety Cruz
 
Unidad 2.2 - Normalizacion.pptx
Unidad 2.2 - Normalizacion.pptxUnidad 2.2 - Normalizacion.pptx
Unidad 2.2 - Normalizacion.pptx
JerickqloOP
 
Clase 4 Normalización de Base de Datos
Clase 4 Normalización de Base de DatosClase 4 Normalización de Base de Datos
Clase 4 Normalización de Base de Datos
José Ricardo Tillero Giménez
 
Postgresql
PostgresqlPostgresql
Postgresql
alexups
 
Postgresql
PostgresqlPostgresql
Postgresql
Alejandro347394
 
Postgresql
PostgresqlPostgresql
Postgresql
Alejandro347394
 
Optimización y diseño de base de datos relacionales
Optimización y diseño de base de datos relacionalesOptimización y diseño de base de datos relacionales
Optimización y diseño de base de datos relacionalesJunior Chiran
 
Normalizacion db
Normalizacion db Normalizacion db
Normalizacion db
josecuartas
 
Contenido UNIDAD II. COMO SON LAS BASES DE DATOS.
Contenido UNIDAD II.  COMO SON LAS BASES DE DATOS.Contenido UNIDAD II.  COMO SON LAS BASES DE DATOS.
Contenido UNIDAD II. COMO SON LAS BASES DE DATOS.
spgutierrez86
 
Reglas conversión modelo relacional
Reglas conversión modelo relacionalReglas conversión modelo relacional
Reglas conversión modelo relacional
rmirandaibanez
 
capV_normalizacion.pptx
capV_normalizacion.pptxcapV_normalizacion.pptx
capV_normalizacion.pptx
JoseMartinez309639
 
Normalización de una base de datos
Normalización de una base de datosNormalización de una base de datos
Normalización de una base de datos
Reimer Xavier
 

Similar a 4. normalización (20)

Normalizacion de bases de datos relacionales.docx
Normalizacion de bases de datos relacionales.docxNormalizacion de bases de datos relacionales.docx
Normalizacion de bases de datos relacionales.docx
 
Base de datos
Base de datosBase de datos
Base de datos
 
Postgresql
PostgresqlPostgresql
Postgresql
 
Postgresql
PostgresqlPostgresql
Postgresql
 
Postgresql
PostgresqlPostgresql
Postgresql
 
Postgresql
PostgresqlPostgresql
Postgresql
 
Examen de recuperacion Betriz Cruz Granados
Examen de recuperacion Betriz Cruz GranadosExamen de recuperacion Betriz Cruz Granados
Examen de recuperacion Betriz Cruz Granados
 
Examen de recuperacion maestra yolanda
Examen de recuperacion maestra yolandaExamen de recuperacion maestra yolanda
Examen de recuperacion maestra yolanda
 
Unidad 2.2 - Normalizacion.pptx
Unidad 2.2 - Normalizacion.pptxUnidad 2.2 - Normalizacion.pptx
Unidad 2.2 - Normalizacion.pptx
 
Clase 4 Normalización de Base de Datos
Clase 4 Normalización de Base de DatosClase 4 Normalización de Base de Datos
Clase 4 Normalización de Base de Datos
 
Postgresql
PostgresqlPostgresql
Postgresql
 
Postgresql
PostgresqlPostgresql
Postgresql
 
Postgresql
PostgresqlPostgresql
Postgresql
 
Optimización y diseño de base de datos relacionales
Optimización y diseño de base de datos relacionalesOptimización y diseño de base de datos relacionales
Optimización y diseño de base de datos relacionales
 
Normalizacion db
Normalizacion db Normalizacion db
Normalizacion db
 
Capitulo 2
Capitulo 2Capitulo 2
Capitulo 2
 
Contenido UNIDAD II. COMO SON LAS BASES DE DATOS.
Contenido UNIDAD II.  COMO SON LAS BASES DE DATOS.Contenido UNIDAD II.  COMO SON LAS BASES DE DATOS.
Contenido UNIDAD II. COMO SON LAS BASES DE DATOS.
 
Reglas conversión modelo relacional
Reglas conversión modelo relacionalReglas conversión modelo relacional
Reglas conversión modelo relacional
 
capV_normalizacion.pptx
capV_normalizacion.pptxcapV_normalizacion.pptx
capV_normalizacion.pptx
 
Normalización de una base de datos
Normalización de una base de datosNormalización de una base de datos
Normalización de una base de datos
 

Más de William Lozano

Tipos de coneciones
Tipos de conecionesTipos de coneciones
Tipos de coneciones
William Lozano
 
Silabo redes de computadores ii
Silabo redes de computadores iiSilabo redes de computadores ii
Silabo redes de computadores iiWilliam Lozano
 
Ejercicios subnetting y vlsm
Ejercicios subnetting y vlsmEjercicios subnetting y vlsm
Ejercicios subnetting y vlsm
William Lozano
 
Lozano william bdii_t7
Lozano william bdii_t7Lozano william bdii_t7
Lozano william bdii_t7
William Lozano
 
William lozano bdii_t8
William lozano bdii_t8William lozano bdii_t8
William lozano bdii_t8
William Lozano
 
Lozano william rl_1
Lozano william rl_1Lozano william rl_1
Lozano william rl_1
William Lozano
 
Lozano william bdii_t7
Lozano william bdii_t7Lozano william bdii_t7
Lozano william bdii_t7William Lozano
 
Lozano william 6_a_ti_1 (1) (1)
Lozano william 6_a_ti_1 (1) (1)Lozano william 6_a_ti_1 (1) (1)
Lozano william 6_a_ti_1 (1) (1)William Lozano
 
7. sgbd sistema gestor de bases de datos
7. sgbd   sistema gestor de bases de datos7. sgbd   sistema gestor de bases de datos
7. sgbd sistema gestor de bases de datosWilliam Lozano
 
6. sql structured query language
6. sql   structured query language6. sql   structured query language
6. sql structured query languageWilliam Lozano
 
5. ejercicios normalización
5. ejercicios normalización5. ejercicios normalización
5. ejercicios normalizaciónWilliam Lozano
 
Silabo bases de_datos_ii
Silabo bases de_datos_iiSilabo bases de_datos_ii
Silabo bases de_datos_iiWilliam Lozano
 
Los números naturales 2.1
Los números naturales 2.1Los números naturales 2.1
Los números naturales 2.1William Lozano
 

Más de William Lozano (20)

Tipos de coneciones
Tipos de conecionesTipos de coneciones
Tipos de coneciones
 
Silabo redes de computadores ii
Silabo redes de computadores iiSilabo redes de computadores ii
Silabo redes de computadores ii
 
Ejercicios subnetting y vlsm
Ejercicios subnetting y vlsmEjercicios subnetting y vlsm
Ejercicios subnetting y vlsm
 
Lozano william bdii_t7
Lozano william bdii_t7Lozano william bdii_t7
Lozano william bdii_t7
 
William lozano bdii_t8
William lozano bdii_t8William lozano bdii_t8
William lozano bdii_t8
 
Lozano william rl_1
Lozano william rl_1Lozano william rl_1
Lozano william rl_1
 
Lozano william bdii_t7
Lozano william bdii_t7Lozano william bdii_t7
Lozano william bdii_t7
 
Lozano william 6_a_ti_1 (1) (1)
Lozano william 6_a_ti_1 (1) (1)Lozano william 6_a_ti_1 (1) (1)
Lozano william 6_a_ti_1 (1) (1)
 
Lozano william 7_a
Lozano william 7_aLozano william 7_a
Lozano william 7_a
 
Data warehouse
Data warehouseData warehouse
Data warehouse
 
7. sgbd sistema gestor de bases de datos
7. sgbd   sistema gestor de bases de datos7. sgbd   sistema gestor de bases de datos
7. sgbd sistema gestor de bases de datos
 
Ejercicios sql access
Ejercicios sql accessEjercicios sql access
Ejercicios sql access
 
Bases de datos access
Bases de datos accessBases de datos access
Bases de datos access
 
6. sql structured query language
6. sql   structured query language6. sql   structured query language
6. sql structured query language
 
3 diseño de-bd
3 diseño de-bd3 diseño de-bd
3 diseño de-bd
 
1 bases de-datos
1 bases de-datos1 bases de-datos
1 bases de-datos
 
5. ejercicios normalización
5. ejercicios normalización5. ejercicios normalización
5. ejercicios normalización
 
Silabo bases de_datos_ii
Silabo bases de_datos_iiSilabo bases de_datos_ii
Silabo bases de_datos_ii
 
Recta numérica 2
Recta numérica 2Recta numérica 2
Recta numérica 2
 
Los números naturales 2.1
Los números naturales 2.1Los números naturales 2.1
Los números naturales 2.1
 

4. normalización

  • 2. Normalización del esquema relacional 1. Normalización Cuando trabajamos con una base de datos relacional, los esquemas de las distintas relaciones que la constituyen nos indican que “cada dato tiene su lugar”. Pero, ¿qué ocurre si se modifican estas estructuras lógicas? . Muchas veces es tan obvio que un dato debe de almacenarse en una de las relaciones y no en otra que se nos escapa la respuesta a porqué es así. Concepto: La teoría de la normalización es en esencia una expresión formal de ideas sencillas con una aplicación muy práctica en el área del diseño de bases de datos, ya que conducen a una correcta elección del esquema de la base de datos. Es la simplificación de los datos dentro de los campos de registro, este proceso lo considero importante ya que nos ayuda a dejar datos en estado demasiado simple de una forma entendible precisa, predecible y manejable. La normalización permite estructurar datos de forma precisa para representar las relaciones necesarias entre los campos de un registro, también permite la recuperación de datos sencillos que se pierden al realizar consultas y reportes. Visión de la Teoría de Normalización Las bases de datos relacionales se normalizan para:  Evitar la redundancia de los datos.  Evitar problemas de actualización de los datos en las tablas.  Proteger la integridad de los datos. Hablaremos de las 3 primeras formas de normalización básica para el diseño de una base de datos.
  • 3. Normalización del esquema relacional 1.1 PRIMERA FORMA NORMAL (1FN) Una relación está en primera forma normal si y sólo si todos los dominios simples subyacentes contienen sólo valores atómicos. Un dominio es atómico si se considera que los elementos del dominio son unidades indivisibles La regla de la 1FN establece que las columnas repetidas deben eliminarse y colocarse en tablas separadas. La regla de la Primera Forma Normal establece que las columnas repetidas deben eliminarse y colocarse en tablas separadas. La primera formal normal se definió para prohibir los atributos multivalorados, los atributos compuestos y sus combinaciones Cuando un esquema de relación no está en primera forma normal, se divide en otros esquemas de relación, repartiendo sus atributos entre los resultantes  Se elimina el (los) atributo(s) que viola(n) la 1FN del esquema original  Se coloca el (los) atributo(s) que viola(n) la 1FN en un esquema aparte junto con la clave principal del esquema de partida Ejemplo1: Biblioteca = (cod_libro, titulo, autor, editorial, nombre_lector, fecha_dev) Resultado de aplicar 1FN: Biblioteca = (cod_libro, titulo, autor, editorial, apellido_paterno, apellido_materno, nombres, fecha_dev) Ejemplo2: Ordenes = (id_orden, fecha, id_cliente, nombre_cliente, provincia, numero_item, descripcion_item, cantidad, precio) Resultado de aplicar 1FN Ordenes = (id_orden, fecha, id_cliente, nombre_cliente, provincia) Pedidos = (id_pedido, numero_item, descripcion_item, cantidad, precio)
  • 4. Normalización del esquema relacional 1.2 SEGUNDA FORMA NORMA (2FN) Una relación está en segunda forma normal si y sólo si está en 1FN y todos los atributos no clave dependen por completo de cualquier clave candidata. La regla de la Segunda Forma Normal establece que todas las dependencias parciales se deben eliminar y separar dentro de sus propias tablas. Una dependencia parcial es un término que describe a aquellos datos que no dependen de la llave primaria de la tabla para identificarlos. La Segunda Forma Normal (2NF) pide que no existan dependencias parciales o dicho de otra manera, todos los a tributos no clave deben depender por completo de la clave primaria. Ejemplo1: Biblioteca = (cod_libro, titulo, autor, editorial, apellido_paterno, apellido_materno, nombres, fecha_dev) Resultado de aplicar 2FN: Libro = (cod_libro, titulo, autor, editorial) Lector = (cod_lector, apellido_paterno, apellido_materno, nombres) Préstamo = (cod_libro, cod_lector, fecha_dev) Ejemplo2: Ordenes = (id_orden, fecha, id_cliente, nombre_cliente, provincia) Pedidos = (id_pedido, numero_item, descripcion_item, cantidad, precio) Resultado de aplicar 2FN Ordenes = (id_orden, fecha, id_cliente, nombre_cliente, provincia) Pedidos = (id_pedido, numero_item, cantidad) Artículos = (numero_item, descripcion_item, precio)
  • 5. Normalización del esquema relacional 1.3 TERCERA FORMA NORMA (3FN) Una relación está en tercera forma normal si y sólo si está en 2FN y además cada atributo del esquema de relación que no está en la clave primaria sólo depende funcionalmente de la clave primaria, y no de ningún otro atributo Una tabla está normalizada en esta forma si todas las columnas que no son llave son funcionalmente dependientes por completo de la llave primaria y no hay dependencias transitivas. Una dependencia transitiva es aquella en la cual existen columnas que no son llave que dependen de otras columnas que tampoco son llave. Ejemplo1: Libro = (cod_libro, titulo, autor, editorial) Lector = (cod_lector, apellido_paterno, apellido_materno, nombres) Préstamo = (cod_libro, cod_lector, fecha_dev) Resultado de aplicar 3FN: Libro = (cod_libro, titulo) Autor = (cod_autor, autor) Editorial = (cod_editorial, editorial) Aunque hemos creado nuevas tablas para que cada una tenga sólo información acerca de una entidad, también hemos perdido la información acerca de qué autor ha escrito qué libro y las editoriales correspondientes, por lo que debemos crear otras tablas que relacionen cada libro con sus autores y editoriales. Libro_Autor = (cod_libro, cod_autor) Libro_Editorial = (cod_libro, cod_editorial) Lector = (Cod_Lector, Apellido_Paterno, Apellido_Materno, Nombres) Préstamo = (Cod_Libro, Cod_Lector, Fecha_Dev) Ejemplo2: Ordenes = (id_orden, fecha, id_cliente, nombre_cliente, provincia) Pedidos = (id_pedido, numero_item, cantidad) Artículos = (numero_item, descripcion_item, precio)
  • 6. Normalización del esquema relacional Ordenes = (id_orden, fecha, id_cliente, nombre_cliente, provincia) Pedidos = (id_orden, numero_item, cantidad) Articulos = (numero_item, descripcion_item, precio) Resultado de aplicar 3FN Ordenes = (id_orden, fecha, id_cliente) Clientes = (id_cliente, nombre_cliente, provincia) Pedidos = (id_orden, numero_item, cantidad) Articulos = (numero_item, descripcion_item, precio) 1.4 Resumen En la tabla siguiente se describe brevemente en que consiste cada una de las reglas, y posteriormente se explican con más detalle. Regla Descripción Primera Forma Normal (1FN) Incluye la eliminación de todos los grupos repetidos. Segunda Forma Normal (2FN) Asegura que todas las columnas que no son llave sean completamente dependientes de la llave primaria. Tercera Forma Normal (3FN) Elimina cualquier dependencia transitiva. Una dependencia transitiva es aquella en la cual las columnas que no son llave son dependientes de otras columnas que tampoco son llave.