Sie sind auf Seite 1von 14

Normalizacin

Normalizacin
El proceso de normalizacin consiste en
verificar el cumplimiento de ciertas reglas
que aseguran la eliminacin de redundancias e
inconsistencias.

NORMALIZACIN
normales
o correctas.

Relaciones

Normalizacin
Las relaciones resultantes deben cumplir
ciertas caractersticas:
Se debe conservar la informacin:
Conservacin de los atributos.
Conservacin de las tuplas, evitando la aparicin
de tuplas que no estaban en las relaciones
originales.

Se deben conservar las dependencias.

EJEMPLO APLICANDO LA
NORMALIZACIN
Guardar datos relacionados con la
administracin de un hotel.

BD

1FN
Para que una base de datos sea 1FN,
es decir, que cumpla la primera
forma normal, cada columna debe
ser atmica.
Atmica significa "indivisible", es
decir, cada atributo debe contener
un nico valor del dominio.

1 FN
Aplicar la primera forma normal es muy simple, bastar
con dividir cada columna no atmica en tantas
columnas atmicas como sea necesario y definir

una clave primaria para cada tabla.


Tenemos el siguiente esquema y queremos aplicar la
1FN:

Ocupacin (nombre_cliente, e-mail, no_hab,


nombre_clie
e-mail
no_ha precio_noc tipo_habitac fecha_entra
precio_noche,
tipo_habitacin,
fecha_entrada)
nte
b
he
ion
da
Oscar
Snchez
Lpez

oscarsl@h
otmail.com

101

$1,200.00

sencilla

12/06/09

1FN

Siguiendo las reglas, la tabla queda:


Ocupacin (nombre_cliente, ap_paterno,
ap_materno, e-mail, no_hab, precio_noche,
tipo_habitacin, fecha_entrada)
Llave
primaria
nombr
e_clien
te

ap_pater
no

ap_mater
no

e-mail

no_ha
b

precio_n
oche

tipo_ha
bitacio
n

fecha_e
ntrada

Oscar

Snchez

Lpez

oscarsl@hotm
ail.com

101

$1,200.00

sencilla

12/06/09

El modelo relacional no obliga a elegir una clave


principal para cada relacin, sino tan slo a la
existencia de al menos una clave candidata.

Primary Key
(No_habitacin, fecha_entrada)
Dos ocupaciones son diferentes si cambian
cualquiera de estos parmetros. La misma
persona puede reservar varias habitaciones al
mismo tiempo o la misma habitacin durante
varios das o en diferentes periodos de tiempo. Lo
que no es posible es que varias personas ocupen
la misma habitacin al mismo tiempo (salvo que se
trate de un acompaante, pero en ese caso, slo
una de las personas es la titular de la ocupacin).

2 FN
Para que una base de datos sea 2FN
primero debe ser 1FN y
los
atributos que no aporten informacin
directa sobre la clave principal deben
almacenarse en una relacin (tabla)
separada.
Si no existe un candidato claro para
la clave principal, se crear una
columna
especfica
con
ese
propsito.

2 FN

EJEMPLO:
Ocupacin (nombre_cliente, ap_paterno, ap_materno, e-mail,
no_hab, precio_noche, tipo_habitacin, fecha_entrada)
El siguiente paso consiste en buscar columnas que no
aporten informacin directa sobre la clave completa. En
este caso el precio por noche de la habitacin y el tipo de
habitacin (es decir, si es doble o sencilla), no aportan
informacin sobre la clave principal. En realidad, estos datos no
son atributos de la ocupacin de la habitacin, sino de la propia
habitacin.
nombr ap_pater ap_mater
e-mail
no_ha precio_noch tipo_ha fecha_e
e_clien
te

no

no

Oscar

Snchez

Lpez

oscarsl@hotm
ail.com

bitacio
n

ntrada

101

$1,200.00

sencilla

12/06/09

2 FN
El siguiente paso consiste en extraer esos
atributos que no forman parte de la clave a
otra relacin. En nuestro ejemplo tendremos
dos relaciones: una para las ocupaciones y
otra para las habitaciones:
Ocupacin (nombre_cliente, ap_paterno,
ap_materno, e-mail, no_hab, fecha_entrada (PK))
nombr
e_clien
te

ap_pater
no

ap_mater
no

e-mail

no_ha
b

fecha_e
ntrada

Oscar

Snchez

Lpez

oscarsl@hotm
ail.com

101

12/06/09

2FN
Habitacin(no_hab(PK),
precio_noche, tipo_habitacin)
no_hab

precio_noche

tipo_habitacion

101

1,200

sencilla

3 FN
Est en 3FN si est en 2FN y adems todas las columnas que
no sean claves dependen de la clave primaria de forma no
transitiva.
nombr
e_clien
te

ap_pater
no

ap_mater
no

e-mail

no_ha
b

fecha_e
ntrada

Oscar

Snchez

Lpez

oscarsl@hotm
ail.com

101

12/06/09

no_hab

cve_habitacion

101

T1

cve_habita
cion

descripc
ion

precio

T1

Sencilla

1,200

T2

Doble

1,800

T3

Triple

2,000

CONCLUSIONES
Se trata de facilitar el trabajo y
evitar problemas de redundancia e
integridad, y no de lo contrario.
Debemos considerar las ventajas o
necesidades de aplicar cada norma
en cada caso, y no excedernos por
intentar
aplicar
las
normas
demasiado al pi de la letra.

Das könnte Ihnen auch gefallen