Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MATERIAL DE APOYO
BASE DE DATOS.
NORMALIZACION
ANSI
(American National Standards Institute - Instituto Nacional Americano de Estndares), organizacin
encargada de estandarizar ciertas tecnologas en EEUU. Es miembro de la ISO, que es la organizacin
internacional para la estandarizacin.
ANSI es una organizacin privada sin fines de lucro, que permite la estandarizacin de productos, servicios,
procesos, sistemas y personal en Estados Unidos. Adems, ANSI se coordina con estndares
internacionales para asegurar que los productos estadounidenses puedan ser usados a nivel mundial. Los
estndares ANSI buscan que las caractersticas de los productos sean consistentes, quelas personas
empleen las mismas definiciones y trminos, y que los productos sean testeados de la misma forma
campusvirtual@inei.gob.pe
INEI:: CURSO DE DISEO DE BASE DE DATOS
Grupos repetidos
La cuarta condicin de Date, que expresa "lo que la mayora de la gente piensa como la caracterstica que
define la 1FN",concierne a grupos repetidos. El siguiente ejemplo ilustra cmo un diseo de base de datos
puede incorporar la repeticin de grupos, en violacin de la 1FN.
Ejemplo 1: Dominios y valores
Suponga que un diseador principiante desea guardar los nombres y los nmeros telefnicos de los
clientes. Procede a definir una tabla de cliente como la que sigue:
campusvirtual@inei.gob.pe
INEI:: CURSO DE DISEO DE BASE DE DATOS
Cliente
ID Cliente Nombre Apellido Telfono
123 Rachel Ingram 555-861-2025
456 James Wright 555-403-1659
789 Cesar Dure 555-808-9633
En este punto, el diseador se da cuenta de un requisito para guardar mltiples nmeros telfonicos para
algunos clientes. Razona que la manera ms simple de hacer esto es permitir que el campo "Telfono"
contenga ms de un valor en cualquier registro dado:
Cliente
ID Cliente Nombre Apellido Telfono
123 Rachel Ingram 555-861-2025
555-403-1659
456 James Wright
555-776-4100
789 Cesar Dure 555-808-9633
Asumiendo, sin embargo, que la columna "Telfono" est definida en algn tipo de dominio de nmero
telefnico (por ejemplo, el dominio de cadenas de 12 caracteres de longitud), la representacin de arriba no
est en 1FN. La 1FN (y, para esa materia, el RDBMS) prohbe a un campo contener ms de un valor de su
dominio de columna.
Sin embargo, esta representacin hace uso de columnas que permiten valores nulos, y por lo tanto no se
conforman con la definicin de la 1NF de Date. Incluso si se contempla la posibilidad de columnas con
valores nulos, el diseo no est en armona con el espritu de 1NF. Telfono 1, Telfono 2, y Telfono 3,
comparten exactamente el mismo dominio y exactamente el mismo significado; el dividir del nmero de
telfono en tres encabezados es artificial y causa problemas lgicos. Estos problemas incluyen:
Dificultad en hacer consultas a la tabla. Es difcil contestar preguntas tales como "Qu clientes
tienen el telfono X?" y "Qu pares de clientes comparten un nmero de telfono?".
La imposibilidad de hacer cumplir la unicidad los enlaces Cliente-a-Telfono por medio del RDBMS.
Al cliente 789 se le puede dar equivocadamente un valor para el Telfono 2 que es exactamente
igual que el valor de su Telfono 1.
La restriccin de los nmeros de telfono por cliente a tres. Si viene un cliente con cuatro nmeros
de telfono, estamos obligados a guardar solamente tres y dejar el cuarto sin guardar. Esto significa
que el diseo de la base de datos est imponiendo restricciones al proceso del negocio, en vez de
(como idealmente debe ser el caso) al revs.
Ejemplo 3: Repeticin de grupos dentro de columnas
El diseador puede, alternativamente, conservar una sola columna de nmero de telfono, pero alterando
su dominio, haciendo una cadena de suficiente longitud para acomodar mltiples nmeros telefnicos:
Cliente
ID Cliente Nombre Apellido Telfono
123 Rachel Ingram 555-861-2025
456 James Wright 555-403-1659, 555-776-4100
789 Cesar Dure 555-808-9633
ste es defendiblemente el peor diseo de todos, y otra vez no mantiene el espritu de la 1NF. El
encabezado "Telfono" llega a ser semnticamente difuso, ya que ahora puede representar, o un nmero de
telfono, o una lista de nmeros de telfono, o de hecho cualquier cosa. Una consulta como "Qu pares de
campusvirtual@inei.gob.pe
INEI:: CURSO DE DISEO DE BASE DE DATOS
campusvirtual@inei.gob.pe