Normalizacion De Base De Datos
Enviado por danifeliz • 23 de Mayo de 2015 • 363 Palabras (2 Páginas) • 185 Visitas
Normalización de Bases de Datos y Técnicas de diseño
Uno de los factores mas importantes en la creación de páginas web dinámicas es el
diseño de las Bases de Datos (BD). Si tus tablas no estan correctamente diseñadas, te
pueden causar un montón de dolores de cabeza cuando tengas de realizar
complicadísimas llamadas SQL en el código PHP para extraer los datos que necesitas.
Si conoces como establecer las relaciones entre los datos y la normalización de estos,
estarás preparado para comenzar a desarrollar tu aplicación en PHP.
Si trabajas con MySQL o con Oracle, debes conocer los métodos de normalización del
diseño de las tablas en tu sistema de BD relacional. Estos métodos pueden ayudarte a
hacer tu código PHP mas fácil de comprender, ampliar, y en determinados casos,
incluso hacer tu aplicación mas rápida.
Básicamente, las reglas de Normalización están encaminadas a eliminar redundancias e
inconsistencias de dependencia en el diseño de las tablas. Más tarde explicaré lo que
esto significa mientras vemos los cinco pasos progresivos para normalizar, tienes que
tener en cuenta que debes crear una BD funcional y eficiente. Tambien detallaré los
tipos de relaciones que tu estructura de datos puede tener.
Digamos que queremos crear una tabla con la información de usuarios, y los datos a
guardar son el nombre, la empresa, la dirección de la empresa y algun e-mail, o bien
URL si las tienen. En principio comenzarias definiendo la estructura de una tabla como
esta:
Formalización CERO
usuarios
nombre empresa direccion_empresa url1 url2
Joe ABC 1 Work Lane abc.com xyz.com
Jill XYZ 1 Job Street abc.com xyz.com
Diríamos que la anterior tabla esta en nivel de Formalizacion Cero porque ninguna de
nuestras reglas de normalización ha sido aplicada. Observa los campos url1 y url2 --
¿Qué haremos cuando en nuestra aplicación necesitemos una tercera url ? ¿ Quieres
tener que añadir otro campo/columna a tu tabla y tener que reprogramar toda la entrada
de datos de tu código PHP ? Obviamente no, tu quieres crear un sistema funcional que
pueda crecer y adaptarse fácilmente a los nuevos requisitos. Hechemos un vistazo a las
reglas del Primer Nivel de Formalización-Normalización, y las aplicaremos a nuestra
tabla.
Primer nivel de Formalización/Normalización. (F/N)
1. Eliminar los grupos repetitivos de la tablas individuales.
2. Crear una tabla separada por cada grupo de datos relacionados.
3. Identificar cada grupo de datos relacionados con una clave primaria.
...