You are on page 1of 23

NORMALIZACIN DE UNA

BASE DE DATOS

QUE ES LA NORMALIZACIN?
Es el proceso de organizar de manera eficiente los
datos dentro de una base de datos. esto incluye la
creacin de tablas y el establecimiento de
relaciones entre ellas segn las reglas prediseadas
tanto para proteger los datos y la base de datos,
como para hacer mas flexible al eliminar la
redundancia incoherente.

QUE ES LA NORMALIZACIN?
Los objetivos principales de la normalizacin son:
la eliminacin de los datos redundantes, para disminuir el
espacio ocupado en el disco y evitar problemas de
mantenimiento; por ejemplo el cambio en la direccin de
los clientes es mucho mas fcil de implementar si los datos
se almacenan solo en la tabla clientes y en ninguna otra
base de datos
Evitar problemas de actualizacin de los datos en las
tablas.
Garantizar que las dependencias que tienen los datos
entre ellos, sean presenten algn sentido.

QUE ES LA NORMALIZACIN?
Estos puntos reducen la cantidad de espacio en la
base de datos y aseguran que estos son
almacenados de manera lgica.
La normalizacin tambin se puede entender
como el proceso mediante el cual se transforman
datos complejos aun conjunto de estructuras de
datos mas pequeas, que adems de ser mas
simples y mas estables, son mas fciles de
mantener.

NORMALIZACIN DE UNA BASE DE


DATOS
Existen algunas reglas para la normalizacin 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 esta en primera forma
normal. Si las tres primera reglas se observan, la
base de datos se considera en tercera forman
normal. Aunque es posible tener otros niveles de
normalizacin, la tercera forma normal es
considerada el mas alto nivel necesario para la
mayora de las apicaciones.

GRADOS DE NORMALIZACIN
Los principales objetivos son:
Eliminar grupos de datos repetidos en tablas
individuales.
Crear una tabla separada para cada conjunto de
datos relacionados.
Identificar cada conjunto de datos relacionados
con una llave primaria .

GRADOS DE NORMALIZACIN:
PRIMERA FORMA NORMAL
Se dice que una tabla esta en primera forma normal si:
Todos los atributos son atmicos. Un atributo es atmico
si es indivisible.
la tabla contiene una llave primaria nica
La llave primaria no contiene atributos nulos
No debe existir variacin en el numero de columnas.
Los campos no llave deben identificarse por la llave.
Debe existir una independencia del orden tanto en las
filas como en la columnas , si los datos cambian de
orden no deben cambiar sus significados.
Esta forma normal elimina los valores repetidos

GRADOS DE NORMALIZACIN:
PRIMERA FORMA NORMAL
No utilizar varios campos en una sola tabla para
almacenar datos similares. Por ejemplo para
seguimientos de un articulo del inventario que proviene
de dos fuentes diferentes, el registro puede contener
campos para el cdigo del proveedor 1 y un cdigo de
proveedor 2.
Que sucede cuando se agrega un tercer proveedor?
Agregar un campo no es la respuesta, ya que requiere
de programacin y modificacin de las tablas y la
necesidad de repetirlo cada vez que se agregue a un
nuevo proveedor. En su lugar debera poner toda la
informacin del proveedor en una tabla independiente
denominada proveedores, y vincular el inventario con
los proveedores por medio de una clave .

articulo

inventario

Cdigo

articulo

Nombre

fecha

proveedor
1

cantidad

proveedor
2

articulo

Cdigo
Nombre
proveedor1
proveedor2
proveedor3

articulo
Cdigo
Nombre

inventario
articulo
proveedor
fecha
cantidad

proveedor
cdigo
nombre
direccin

GRADOS DE NORMALIZACIN:
SEGUNDA FORMA NORMAL
Dependencia funcional. Una relacin esta en 2fn si
esta en 1fn y si los atributos que no forma parte de
ninguna llave dependen de forma completa de la
calve principal es decir no existen dependencias
parciales.

GRADOS DE NORMALIZACIN:
SEGUNDA FORMA NORMAL
Sus principales objetivos son:
Crear tablas separadas para aquellos conjunto de
valores que se aplican a varios registros. Ejemplo
ciudades, profesin.
Relacionar estas tablas por medio de una llave
primaria

GRADOS DE NORMALIZACIN:
SEGUNDA FORMA NORMAL
Los registro no deben depender de nada que no
sea una llave primaria.
Ejemplo considerando la direccin de un cliente no
solo se necesita en la tabla clientes, sino tambin
para los pedidos envi, factura , cuentas por
cobrar e incluso en las ordenes. En lugar de
guardar la direccin del cliente como una entrada
independiente en cada una de estas tablas se
guarda en un lugar , ya sea tabla clientes o en una
tabla de direcciones separada.

cliente
cdigo
nombre

apellido
telfono
direccin

factura

orden

N factura

N orden

Nombre
cliente

Nombre
cliente

direccin

direccin

telfono

telfono

precio

articulo

articulo

cantidad

fecha

fecha

factura

orden

N factura

N orden

Cod
cliente

Cod
cliente

precio

precio

articulo

articulo

fecha

fecha

GRADOS DE NORMALIZACIN:
TERCERA FORMA NORMAL
La tabla se encuentra en 3fn si es 2fn y no existe
ninguna dependencia funcional transitiva entre los
atributos que no son clave.

GRADOS DE NORMALIZACIN:
TERCERA FORMA NORMAL
Sus principales objetivos:
Eliminar campos que no dependan de las llaves.
Los valores de un registro que no forma parte de la llave
de registro no tiene cabida en la tabla.

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 direccin
pueden estar incluidos. Pero existen muchas universidades.
Si la informacin de la universidad se almacena en la tabla
candidatos no hay manera de listar las universidades que
no tengan candidatos. Lo mejor es crear una tabla
candidatos con llave de cdigo de la universidad.

OTRAS FORMAS DE NORMALIZACIN


Cuarta forma normal, tambin llamada Boyce
Codd Forma Normal (FNBC), y quinta forma normal,
existen, pero rara vez se consideran en el diseo
prctico. Haciendo caso omiso de estas reglas
puede resultar en menos de diseo de base de
datos perfecto, pero no debera afectar a la
funcionalidad.

EJEMPLO DE NORMALIZACIN: 0NF


CodLibro

Titulo

Autor

Editorial

NombreLector

FechaDev

1001

Variable
compleja

Murray Spiegel

McGraw Hill

Prez Gmez,
Juan

15/04/2005

1004

Visual Basic 5

E. Petroustsos

Anaya

Ros Tern, Ana

17/04/2005

1005

Estadstica

Murray Spiegel

McGraw Hill

Roca, Ren

16/04/2005

1006

Nancy
Oracle University Greenberg y
Priya Nathan

Oracle Corp.

Garca Roque,
Luis

20/04/2005

1007

Clipper 5.01

McGraw Hill

Prez Gmez,
Juan

18/04/2005

Ramalho

EJEMPLO DE NORMALIZACIN 1FN


CodLibro

Titulo

Autor

Editorial

Paterno

Materno

Nombres

FechaDev

1001

Variable
compleja

Murray
Spiegel

McGraw Hill

Prez

Gmez

Juan

15/04/2005

1004

Visual Basic 5

E.
Petroustsos

Anaya

Ros

Tern

Ana

17/04/2005

1005

Estadstica

Murray
Spiegel

McGraw Hill

Roca

Ren

16/04/2005

1006

Oracle
University

Nancy
Greenberg

Oracle Corp.

Garca

Roque

Luis

20/04/2005

1006

Oracle
University

Priya Nathan Oracle Corp.

Garca

Roque

Luis

20/04/2005

1007

Clipper 5.01

Ramalho

Prez

Gmez

Juan

18/04/2005

McGraw Hill

1NF solo tener campos


atmicos

EJEMPLO DE NORMALIZACIN 2FN


CodLibro

Titulo

Autor

Editorial

1001

Variable compleja

Murray Spiegel

McGraw Hill

1004

Visual Basic 5

E. Petroustsos

Anaya

1005

Estadstica

Murray Spiegel

McGraw Hill

1006

Oracle University

Nancy Greenberg

Oracle Corp.

1006

Oracle University

Priya Nathan

Oracle Corp.

1007

Clipper 5.01

Ramalho

McGraw Hill

CodLector

Paterno

Materno

Nombres

501

Prez

Gmez

Juan

502

Ros

Tern

Ana

503

Roca

504

Garca

Ren
Roque

Luis

EJEMPLO DE NORMALIZACIN 2FN


CodLibro CodLector FechaDev

1001

501 15/04/2005

1004

502 17/04/2005

1005

503 16/04/2005

1006

504 20/04/2005

1007

501 18/04/2005

Se crea una nueva tabla


para mantener la
informacin de los libros
que estn prestados

EJEMPLO DE NORMALIZACIN 3FN


CodLi
bro
1001

Titulo

CodA
utor

Variable compleja
801

Autor

CodEd
itorial

Murray Spiegel
901

Editorial
McGraw Hill

1004 Visual Basic 5

802 E. Petroustsos

1005 Estadstica

902 Anaya

803 Nancy Greenberg

903 Oracle Corp.

1006

Oracle University
804

1007 Clipper 5.01

Priya Nathan

806 Ramalho

Se crean tablas para cada entidad definida

EJEMPLO DE NORMALIZACIN 3FN


CodLibro

codAutor

CodLibro
1001

801

1004

802

1005

801

1006

803

1006

804

1007

806

codEditorial

1001

901

1004

902

1005

901

1006

903

1007

901

Se crean nuevas tablas para indicar las relaciones perdidas

EJEMPLO DE NORMALIZACIN 3FN


CodLibro CodLector FechaDev
CodLector
1001

501 15/04/2005

1004

Paterno

Materno

Nombres

501

Prez

Gmez

Juan

502 17/04/2005

502

Ros

Tern

Ana

1005

503 16/04/2005

503

Roca

504

Garca

1006

504 20/04/2005

1007

501 18/04/2005

Ren
Roque

Luis

El resto de tablas no necesitan modificacin

You might also like