Está en la página 1de 40

TEORA DE NORMALIZACIN

Ing. Jorge Vildoso

QUE ES LA NORMALIZACIN
Es el proceso mediante el cual se transforman datos complejos a
un conjunto de estructuras de datos ms pequeas, que adems
de ser ms simples y ms estables, son ms fciles de mantener.
Tambin se puede entender la normalizacin como una serie de
reglas que sirven para ayudar a los diseadores de bases de
datos a desarrollar un esquema que minimice los problemas de
lgica.

La normalizacin se adopt porque el viejo estilo de poner todos


los datos en un solo lugar, como un archivo o una tabla de la base
de datos, era ineficiente y conduca a errores de lgica cuando se
trataban de manipular los datos.
El proceso de normalizacin tiene un nombre y una serie de reglas
para cada fase. Esto puede parecer un poco confuso al principio,
pero poco a poco se va entendiendo el proceso, as como las
razones para hacerlo de esta manera.

CONTEXTO

Problema a
modelar

Normalizacin

Propiedades

Modelo
(E)ER

Modelo
Relacional

Entidades
Atributos

Relaciones
(datos)

CONTEXTO
Mundo
real
Modelado
de datos

Diseo conceptual
Diseo lgico

Normalizacin
Diseo
fsico
Base de datos

El proceso de normalizacin de bases de datos consiste en aplicar una serie de


reglas a las relaciones obtenidas tras el paso del modelo entidad-relacin al
modelo relacional.
Las bases de datos relacionales se normalizan para:
Evitar la redundancia de los datos.
Evitar problemas de actualizacin de los datos en las tablas.
Proteger la integridad de los datos.
En el modelo relacional es frecuente llamar tabla a una relacin, aunque
para que una tabla sea considerada como una relacin tiene que cumplir
con algunas restricciones:
Cada columna debe tener su nombre nico.
No puede haber dos filas iguales. No se permiten los duplicados.
Todos los datos en una columna deben ser del mismo tipo.

VENTAJAS DE LA NORMALIZACION
Integridad de datos (porque no hay datos redundantes ni omitidos).
Consultas optimizadas (porque las tablas normalizadas generan
combinaciones eficaces y rpidas).
Creacin y ordenacin de ndices ms rpidas (porque las tablas
tienen menos columnas).
Ejecucin ms rpida de la instruccin UPDATE (porque hay menos
ndices por tabla).
Resolucin de concurrencias mejorada (porque los bloqueos de tabla
afectarn a menos datos).

CMO UTILIZAMOS LA NORMALIZACIN?


Mini
Minimundo
mundo

OBTENCION Y ANALISIS DE
REQUERIMIENTOS

DISEO CONCEPTUAL
Modelo Entidad Relacin
Extendido

Independiente del SGBD


Especfico para cada SGBD

DISEO LOGICO
Tablas

DISEO FISICO

NORMALIZACION

OBJETIVOS DE UN DISEO NORMALIZADO


Eliminar anomalas de actualizacin.
Conservar la informacin (descomposicin sin prdida de informacin).
Conservar las dependencias funcionales (descomposicin sin prdida de
DF).
No crear dependencias nuevas o interrelaciones inexistentes.
Facilidad de uso.
Eficiencia.
A VECES NO SON COMPATIBLES !

Existen unas cuantas reglas para la normalizacin de bases de


datos. Cada regla se denomina "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, se
considera que la base de datos est en la "tercera forma normal"
Aunque existen otros niveles de normalizacin, se considera que
la tercera forma normal es el mximo nivel necesario para la
mayora de las aplicaciones.

FORMAS NORMALES
PRIMERA FORMA NORMAL O FORMA MNIMA
Una relacin esta en primera forma normal (1FN) si cada uno
de sus atributos toma valores atmicos, es decir, en lo que al
sistema de informacin respecta, los valores de los atributos
son indivisibles.

Eliminar grupos repetidos en tablas individuales.


Crear una tabla diferente para cada conjunto de datos
relacionados.
Identificar cada conjunto de datos relacionados mediante una
clave principal.
No utilizar varios campos en una nica tabla para almacenar
datos similares.

Ejemplo 1.
Para realizar el seguimiento de un artculo de inventario que puede
provenir de dos orgenes, un registro del inventario puede contener
campos para el Cdigo de proveedor 1 y el Cdigo de proveedor 2.
Qu pasa si agregamos un tercer campo?
Artculo

Prov1

Prov2

Prov3

Maz
Arroz

Granja

Casita

La solucin no es agregar un campo; hace falta modificar el


programa y la tabla. En su lugar, almacene todas las
informaciones de proveedor en una tabla independiente
denominada Proveedores entonces en lugar de utilizar los
campos proveedor 1, proveedor 2, etc. Utilizamos un solo
campo CdigoProveedor relacionado a la tabla proveedores.

Cdigo
145
154

Proveedor
Casita
Granja

Artculo
Maz
Arroz

Cod.Prov
154
145

Ejemplo 2.

no est en 1FN

est en 1FN

Ejemplo 3.
Varios o distintos tipos de valores, en una misma celda de todos y cada uno de
los registros, NO estn permitidos

SEGUNDA FORMA NORMAL


Una relacin esta en segunda forma normal (2FN) si y slo si esta
en 1FN y cada atributo no-clave de la relacin es total y
funcionalmente dependiente de la clave primaria, en otras palabras
deben estar en dependencia funcional completa (DFC) . Si no se
cumple, se debe separar en diferentes tablas para que cumplan este
requisito.

Crear tablas independientes para conjuntos de valores que se


apliquen a varios registros.
Relacionar dichas tablas mediante una clave externa.
Los registros tan slo deben depender de la clave principal de
una tabla (si es necesario, puede ser una clave compuesta).

Ejemplo 1.
Piense en la direccin de un cliente en un sistema de
contabilidad. La direccin es necesitada por la tabla Clientes
pero por las tablas Pedidos, Facturas y Cuentas a cobrar
tambin. En lugar de almacenar la direccin del cliente como una
entrada diferente en cada tabla, almacnela en un nico lugar, ya
sea en la tabla Clientes o en una tabla de direcciones
independiente.

Ejemplo 2.

EJEMPLO 3.

EJEMPLO 4.

EJEMPLO 5.

EJEMPLO 6.

Eliminar los campos que no dependan de la clave. Los valores de


un registro que no forman parte de la clave de dicho registro no
pertenecen a esa tabla.
En general, siempre que el contenido de un grupo de campos se
puede aplicar a ms de un registro de la tabla, debe tener en
cuenta la posibilidad de incluir dichos campos en una tabla
independiente.

TERCERA FORMA NORMAL


Una relacin esta en tercera forma normal (3FN) si y slo si esta en
2FN y no existen dependencias funcionales entre atributos que no
pertenecen a la clave primaria de la relacin, es decir, no debe tener
DEPENDENCIA TRANSITIVA.

EJEMPLO 2.

EJEMPLO 3.

EJEMPLO 4.

OTRAS FORMAS NORMALES


Existe una cuarta forma normal, llamada tambin Forma normal
de Boyce Codd (BCNF), y una quinta forma normal, pero pocas
veces se consideran prcticas en un diseo.
La omisin de estas reglas puede dar como resultado una tabla
que no sea perfecta, pero no debera afectar a su
funcionamiento.

No siempre es posible transformar un relacin a FNBC sin que

se produzca prdida de dependencias funcionales, pero s sin


prdida de informacin.
Puede ocurrir que ciertas relaciones que se encuentran en FNBC

presenten todava redundancias y anomalas, pero stas ya no


se deben a las Dependencias Funcionales, y por tanto, para
evitarlas hay que recurrir a las formas normales avanzadas
basadas en otro tipo de dependencias

Ejemplo 1: problemas encontrados antes de


normalizar
N Factura

Fecha

RUC Cliente

Cliente

Clave Primaria

Producto

Valor

Cantidad

Descuento

000257

01-07-2000

1234567

Juan Prez. Arequipa

Lpiz BIC

100

250

5%

000257

01-07-2000

1234567

Juan Prez. Arequipa

Block

1000

200

5%

000257

01-07-2000

1234567

Juan Prez. Arequipa

Lpiz Grafito

70

50

0%

000258

01-07-2000

1234568

Ana Palma. Tacna

Lpiz BIC

100

400

6%

000258

01-07-2000

1234568

Ana Palma. Tacna

Cuaderno

500

350

6%

000258

01-07-2000

1234568

Ana Palma. Tacna

Regla

100

20

0%

Dependencia
transitiva entre
atributos no clave

Dependencia
parcial de clave
Valores No
Atmicos

1FN
N Factura

Fecha

RUC Cliente

Nombres

Apellidos

Ciudad

Producto

Valor

Cantidad

Descuento

000257

01-07-2000

1234567

Juan

Prez

Arequipa

Lpiz BIC

100

250

5%

000257

01-07-2000

1234567

Juan

Prez

Arequipa

Block

1000

200

5%

000257

01-07-2000

1234567

Juan

Prez

Arequipa

Lpiz Grafito

70

50

0%

000258

01-07-2000

1234568

Ana

Palma

Tacna

Lpiz BIC

100

400

6%

000258

01-07-2000

1234568

Ana

Palma

Tacna

Cuaderno

500

350

6%

000258

01-07-2000

1234568

Ana

Palma

Tacna

Regla

100

20

0%

Valores
Atmicos

2FN
N Factura

Producto

Cantidad

Descuento

000257

Lpiz BIC

250

5%

000257

Block

200

5%

000257

Lpiz Grafito

50

0%

000258

Lpiz BIC

400

6%

000258

Cuaderno

350

6%

000258

Regla

20

0%

Producto

Valor

N Factura

Fecha

RUC Cliente

Cliente

Ciudad

Lpiz BIC

100

000257

01-07-2000

1234567

Juan Prez

Arequipa

Block

1000

000257

01-07-2000

1234567

Juan Prez

Arequipa

Lpiz Grafito

70

000257

01-07-2000

1234567

Juan Prez

Arequipa

Lpiz BIC

100

000258

01-07-2000

1234568

Ana Palma

Tacna

Cuaderno

500

000258

01-07-2000

1234568

Ana Palma

Tacna

Regla

100

000258

01-07-2000

1234568

Ana Palma

Tacna

3FN
N Factura

Producto

Cantidad

Descuento

RUC Cliente

Cliente

Ciudad

000257

Lpiz BIC

250

5%

1234567

Juan Prez

Arequipa

000257

Block

200

5%

1234568

Ana Palma

Tacna

000257

Lpiz Grafito

50

0%

000258

Lpiz BIC

400

6%

000258

Cuaderno

350

6%

000258

Regla

20

0%

Producto

Valor

N Factura

Fecha

RUC Cliente

Lpiz BIC

100

000257

01-07-2000

1234567

Block

1000

000257

01-07-2000

1234567

Lpiz Grafito

70

000257

01-07-2000

1234567

Lpiz BIC

100

000258

01-07-2000

1234568

Cuaderno

500

000258

01-07-2000

1234568

Regla

100

000258

01-07-2000

1234568

Ejemplo 2:

rdenes
ID_orden

Fecha

ID_cliente

Nom_cliente

Ciudad

Num_art

Nom_art

Cant

Precio

2301

23/02/11

101

Martn

Tumbes

3786

Red

35.00

2301

23/02/11

101

Martn

Tumbes

4011

Raqueta

65.00

2301

23/02/11

101

Martn

Tumbes

9132

Paq-3

4.75

2302

25/02/11

107

Hernn

Lima

5794

Paq-6

5.00

2303

27/02/11

110

Pedro

Junn

4011

Raqueta

65.00

2303

27/02/11

110

Pedro

Junn

3141

Funda

10.00

1FN
rdenes
ID_orden

Fecha

ID_cliente

Nom_cliente

Ciudad

2301

23/02/11

101

Martn

Tumbes

2302

25/02/11

107

Hernn

Lima

2303

27/02/11

110

Pedro

Junn

rdenes _Artculos
ID_orden

Num_art

Nom_art

Cant

Precio

2301

3786

Red

35.00

2301

4011

Raqueta

65.00

2301

9132

Paq-3

4.75

2302

5794

Paq-6

5.00

2303

4011

Raqueta

65.00

2303

3141

Funda

10.00

2FN
rdenes _Artculos
ID_orden

Num_art

Cant

2301

3786

2301

4011

2301

9132

2302

5794

2303

4011

2303

3141

Artculos
Num_art

Nom_art

Precio

3786

Red

35.00

4011

Raqueta

65.00

9132

Paq-3

4.75

5794

Paq-6

5.00

3141

Funda

10.00

3FN

rdenes _Artculos

rdenes
ID_orden

Fecha

ID_cliente

ID_orden

Num_art

Cant

2301

3786

2301

4011

2301

9132

2301

23/02/11

101

2302

5794

2302

25/02/11

107

2303

4011

2303

27/02/11

110

2303

3141

Artculos
Num_art

Clientes
ID_cliente

Nom_cliente

Ciudad

101

Martn

Tumbes

107

Hernn

Lima

110

Pedro

Junn

Nom_art

Precio

3786

Red

35.00

4011

Raqueta

65.00

9132

Paq-3

4.75

5794

Paq-6

5.00

3141

Funda

10.00

EJERCICIOS

También podría gustarte