Escolar Documentos
Profissional Documentos
Cultura Documentos
maestra?
A la hora de establecer la relacin entre dos tablas, nos ayudar mucho hacer uso de un
par de frases para saber cmo ha de establecerse la relacin entre ellas, es decir, cul ser
maestra de cual.
Pongamos como ejemplo dos tablas que han de tener relacin entre s en una aplicacin
de gestin: Facturas y Empresas.
Para establecer de qu modo ha de establecerse la relacin entre ellas, diremos las frases
siguientes:
La fase 1 tiene sentido, ya que a una misma empresa se le podr emitir ms de una factura.
Implica una relacin de 1 (desde la empresa) a n ( a las facturas).
La frase 2, por el contrario, no tiene sentido, ya que no es posible emitir una misma factura
a distintas Empresas. Esta implicara una relacin de 1 (desde la factura) a n (a las
empresas), cuando la relacin es este sentido es de 1 a 1 (una factura solamente puede
emitirse a una empresa).
Esto quiere decir que la relacin entre Empresas y Facturas ser una relacin de 1 a n
desde Empresas a Facturas y de 1 a 1 desde Facturas a Empresas; por lo tanto, la tabla
Empresas ser maestra de Facturas.
A la hora de plasmarlo en nuestro proyecto de datos, lo que haremos ser crear, en primer
lugar, la tabla de Empresas y a continuacin la de Facturas. En el ltimo paso del asistente
de creacin de la tabla de Facturas indicaremos que Empresas ser maestra de la tabla,
para ello se activar la casilla de verificacin que se muestra junto al nombre de la tabla:
Una vez finalizado el asistente, veremos que en la tabla de Facturas se ha creado el enlace
a la de Empresas (que es lo que llamamos enlace singular, pues representa un enlace de
1 a 1 desde la factura a la empresa) y un ndice por dicho campo:
Y en la tabla de Empresas, ha creado un enlace plural a la tabla de Facturas, que representa
la relacin 1 a n (empresa-facturas):
Una de las fallas principales por las que pasamos los desarrolladores al momento de implementar o
crear Bases de Datos en SQL server 2008 o en cualquier motor de BDs es la falta de normalizacin
en las mismas.
Esto conlleva, que normalmente creemos campos duplicados dentro de las tablas, provocando as
que nuestras bases de datos sean extremadamente complejas, ocupen mayor espacio y recursos,
adems de crearnos un montn de problemas a la hora de actualizar, hacer consultas, realizar
mantenimiento, etc.
Si normalizamos nuestras Bases de Datos podemos prevenir muchos de estos problemas, por
ejemplo:
Supongamos que tenemos una compaa en la que vendemos varios tipos de productos a nuestros
clientes, la informacin de cada uno de nuestros clientes la tenemos almacenada en una Base de
Datos en la cual incluimos el nombre, apellido, direccin, telfono, email , ciudad y pas.
En esta base de datos no normalizada hemos creado una simple tabla, lo cual nos podra traer como
consecuencia algunos problemas cuando tratemos de hacer consultas o al intentar modificar los
datos existentes.
En este artculo slo hablar de las principales formas normales en modo de introduccin, ya que
es un tema un poco extenso y por eso he decidido dividirlo en cuatro (4) partes, Introduccin,
Primera Forma Normal, Segunda Forma Normal y la ltima ser Tercera Forma Normal
Duplicacin de Datos:
En una base de datos no normalizada, la informacin de un cliente puede ser ingresada cada vez
que l haga una compra, almacenando los datos del cliente en una tabla Compras, esto trae como
resultado la duplicidad de trabajo, adems que es muy difcil que la informacin sea ingresada de la
misma manera cada vez, por ejemplo revisemos las distintas maneras que un empleado puede
ingresar un nombre (Marcos Gonzales), o una ciudad por ejemplo San Francisco (SF, San Fran, SFO),
etc
Problemas de actualizacin:
Supongamos que la direccin de uno de nuestros clientes debe ser actualizada porque se ha mudado
de domicilio, pero los datos del mismo han sido ingresados en mltiples lugares dentro de nuestra
base de datos, esto provocara que la actualizacin debera hacerse en los mltiples lugares donde
haya sido ingresada la data, si la actualizacin no la hacemos en esos mltiples sitios dentro de
nuestra base de datos, entonces la informacin llegara a ser inconsistente, es decir sera correcta
en algunos lugares e incorrecta en otros.
Problemas de Consulta:
Los datos en una base de datos que no est normalizada son difciles de revisar, por ejemplo si en
la tabla de pedidos, por cada compra que haga nuestro cliente se ingresan los datos del mismo, y el
cliente hace varias compras en el transcurso del mes, tendremos una gran cantidad de informacin
repetida, si el cliente se muda de domicilio, el nico lugar donde la direccin sera la correcta
correspondera a la ltima compra realizada por l.
Primera forma normal: La tabla no debe tener grupos repetidos, y cada una de las columnas debe
ser Atmica; Atmica no significa que deben ser explosivas, al contrario, Atmica significa que las
columnas deben reducirse al menor valor posible.
Segunda forma normal: Cada columna depende de una clave primaria, la segunda forma normal
aplica slo cuando una tabla tendr una clave primaria compuesta.
Tercera forma normal: Cada columna depende directamente de una clave primaria, esto es
columnas sin clave primaria no sern directamente dependientes de otras columnas sin clave
primaria.
Las formas normales son estrictamente progresivas para cada una de las formas normales
superiores, es decir, la tercera forma normal es estricta con la segunda forma normal, la segunda
forma normal es estricta con la primera, qu decimos con esto? Que si una tabla cumple con la
segunda forma normal, entonces por definicin es tambin una tabla de primera forma normal.
http://deletesql.com/viewtopic.php?f=5&t=20
https://www.youtube.com/watch?v=D600auhfPHI