Pasos
Estos pasos demuestran el proceso de
normalización de una tabla de Farmacia.
Tabla sin normalizar:
Código | Producto | Cantidad | Tipo1 | Tipo2 | Tipo3 |
1022 | Genurin | 412 | 101-07 | 143-01 | 159-02 |
4123 | Advil | 216 | 201-01 | 211-02 | 214-01 |
Primera forma normal: no hay grupos
repetidos
Las tablas sólo deben tener dos dimensiones.
Puesto que un producto tiene varios tipos, estas clases deben
aparecer en una tabla independiente. Los campos Tipo1, Tipo2 y
Tipo3 de los registros anteriores son indicativos de un problema
de diseño. Las hojas de cálculo suelen usar la
tercera dimensión, pero las tablas no deberían
hacerlo. Otra forma de considerar ese problema es con una
relación de uno a varios y poner el lado de uno y el lado
de varios en tablas distintas. En su lugar, cree otra tabla en la
primera forma normal eliminando el grupo repetido (Tipo),
según se muestra a continuación:
Código | Producto | Cantidad | Tipo |
1022 | Genurin | 412 | 101-07 |
1022 | Genurin | 412 | 143-01 |
1022 | Genurin | 412 | 159-02 |
4123 | Advil | 216 | 201-01 |
4123 | Advil | 216 | 211-02 |
4123 | Advil | 216 | 214-01 |
Segunda forma normal: eliminar los datos
redundantes
Observe los diversos valores de Tipos para cada valor de
Código en la tabla anterior. Código no depende
funcionalmente de Producto (la clave principal), de modo que la
relación no cumple la segunda forma normal.
Las dos tablas siguientes demuestran la segunda forma
normal:
Código | Producto | Cantidad |
1022 | Genurin | 412 |
4123 | Advil | 216 |
Código | Tipo |
1022 | 101-07 |
1022 | 143-01 |
1022 | 159-02 |
4123 | 201-01 |
4123 | 211-02 |
4123 | 214-01 |
Tercera forma normal:
Eliminar los datos no dependientes de la clave. En el
último ejemplo, Codigo (Codigo) es funcionalmente
dependiente del atributo Producto La solución es pasar ese
atributo de la tabla, según se muestra a
continuación:
Código | Producto |
1022 | Genurin |
4123 | Advil |
Producto | Codigo | Dept | |
Genurin | 412 | 42 | |
Advil | 216 | 42 |
Base de Datos de
Farmacia
TABLA # 01 PRODUCTO
TABLA #02 TIPOS
TABLA #03 FECHA
TABLA #04
Relación
2da Base de datos
Agencia de Viajes
Diccionario de
datos
Base de datos #01
Nombre de la | Nombre de | Tipo de Dato |
Producto | Código | Numero |
Producto | Texto | |
Fecha _de_ Vencimiento | Fecha | |
Tipo_1 | Texto | |
Tipo_2 | Texto | |
Tipo_3 | Texto | |
Tipos | Producto | Texto |
Código | Numero | |
Fecha_ de _Vencimiento | Fecha | |
Tipo | Texto | |
Fecha | Fecha_de_Vencimiento | Fecha |
Código | Numero | |
Producto | Texto | |
Registro | Código | Numero |
Tipo | Texto |
Base de Datos #02
Nombre de la | Nombre de | Tipo de Dato |
Centro Clínico | Nombre | Texto |
Dirección | Texto | |
Teléfono | Numero | |
Especialidad_1 | Texto | |
Especialidad_2 | Texto | |
Especialidad_3 | Texto | |
Especialización | Nombre | Texto |
Dirección | Texto | |
Teléfono | Numero | |
Especialidad | Texto | |
Dirección | Nombre | Texto |
Dirección | Texto | |
Teléfono | Numero | |
Especialidades | Nombre | Texto |
Especialidad | Texto |
Resumen
El diseño de bases de datos consta de tres
etapas: diseño conceptual, lógico y físico.
El diseño lógico es el proceso mediante el que se
construye un esquema que representa la información que
maneja una empresa, basándose en un modelo lógico
determinado, pero independientemente del SGBD concreto que se
vaya a utilizar para implementar la base de datos e
independientemente de cualquier otra consideración
física.
Las dos fases de que consta el diseño
lógico son la construcción y validación de
los esquemas lógicos locales para cada vista de usuario, y
la construcción y validación de un esquema
lógico global. Cada una de estas fases consta de una serie
de pasos.
Un paso importante es la conversión del esquema
conceptual a un esquema lógico adecuado al modelo
relacional. Para ello, se deben hacer algunas transformaciones:
eliminar las relaciones de muchos a muchos, eliminar las
relaciones complejas, eliminar las relaciones recursivas,
eliminar las relaciones con atributos, eliminar los atributos
multievaluados, reconsiderar las relaciones de uno a uno y
eliminar las relaciones redundantes.
Los esquemas lógicos se pueden validar mediante
la normalización y frente a las transacciones de los
usuarios. La normalización se utiliza para mejorar el
esquema, de modo que éste satisface ciertas restricciones
que evitan la duplicidad de datos. La normalización
garantiza que el esquema resultante está más
próximo al modelo de la empresa, es consistente, tiene la
mínima redundancia y la máxima
estabilidad.
Las restricciones de integridad son las restricciones
que se imponen para que la base de datos nunca llegue a un estado
inconsistente. Hay cinco tipos de restricciones de integridad:
datos requeridos, restricciones de dominio, integridad de
entidades, integridad referencial y reglas de negocio.
Para garantizar la integridad referencial se debe
especificar el comportamiento de las claves ajenas: si aceptan
nulos y qué hacer cuando se borra la tupla a la que se
hace referencia, o cuando se modifica el valor de su clave
primaria.
Bibliografía
El diseño de bases de datos relacionales es un
tema de consenso, coincidiendo la mayoría de autores en
las tres etapas de diseño conceptual, diseño
lógico y diseño físico. Sin embargo, los
pasos de que consta cada una de estas etapas y la
terminología utilizada no es muy uniforme. Este
capítulo se ha elaborado siguiendo los pasos que se
especifican en el texto de Connolly, Begg y Strachan (1996),
combinado con la terminología de Batini, Ceri y
Navathe (1994).
Autor:
Thais Londoño
República Bolivariana de
Venezuela
Ministerio del Poder Popular para la
Educación Superior
Instituto Universitario Politécnico
Santiago Mariño
Ciudad Ojeda Estado Zulia
Informe
Proyecto Final