domingo, 28 de septiembre de 2008

CAPITULO V MODELO RELACIONAL DE DATOS
2.- TIPOS DE RELACIONES
Analizando a fondo, la mayoría de las relaciones y sus documentos son del tipo llamado 1:M ( uno a muchos), es decir cada tabla de relación o documento contiene un renglón de la primera tabla y muchos renglones de la segunda tabla, por ejemplo en una factura solo hay o se encuentra, un cliente y muchos productos, en una receta por ejemplo solo hay un paciente pero hay muchas medicinas, en una orden de compra o de pedido hay un solo proveedor pero hay muchos productos y así sucesivamente.
En general existen los siguientes tipos de relaciones:
a) 1:1 (uno a uno), por ejemplo un recibo de renta , una boleta individual de calificaciones, etc.
b) 1:CTE ( uno a constante), por ejemplo una nota de renta de películas, donde la política de la empresa es que solo se rentan hasta cuatro películas.
c) 1:M ( uno a muchos), el caso mas común, facturas, notas de ventas, ordenes de salida de almacén, solicitudes o requisiciones de material o de equipo o de personal, etc.
d) M:M (muchos a muchos), cuadros o concentrados, muchos de ellos de tipo fiscal, por ejemplo informes fiscales al gobierno acerca de los muchos clientes que hacen muchas transacciones mayores de $ 10,000.00, informes al gobierno de los muchos distribuidores e importadores de equipo de computo y las muchas transacciones que hacen mensualmente de equipo, etc.
Repitiendo el caso mas común de relaciones, son las de 1:M, en este caso, solamente la tabla de relación no permite resolver el problema de información, en casos de relaciones 1:M se ocupara una segunda tabla llamada detalle-relación.
El modelo completo de tablas para una y solamente una relación de tipo 1:M es;
tabla de 1(uno) tabla de M(muchos)
- Clave de uno - Clave de muchos
* otros campos - otros campos
tabla de R(relación) tabla detallerelacion
- Clave de relación - Clave de relación
- Clave de uno - Clave de muchos
- otros campos - otros campos
Este es el modelo principal de una base de datos relacional y se deberá siempre aplicar cuando se tenga que construir una base de datos que tenga una relación 1:M.
Ejemplo;
Clientes(1) Productos (M)
Clave Cliente - Clave Producto
Nombre Cliente - Nombre Producto
Dirección Cliente - Descripción Producto
Teléfono Cliente - Precio Producto
etcétera Cliente
Facturas(relación) Detalle Factura (detalle relación)
Clave Factura - Clave Factura
Clave Cliente - Clave Producto
Fecha Factura - Cantidad Producto
etcétera Factura - Etcétera
ejemplo;
Pacientes (1) Medicinas (muchos)
Clave Paciente - Clave Medicina
Nombre Paciente - Nombre Medicina
etcétera - Presentación Medicina
Recetas (relación) Detalle Receta
Clave Receta - Clave Receta
Clave Paciente - Clave Medicina
Fecha Receta - Dosis
Etcétera - Cantidad
Como se observa en los dos ejemplos, las tres claves ( la de uno, la de muchos y la de relación) solo se repiten una sola vez en otra tabla.
De nuevo un problema o sistema de información, que descansa en una base de datos de tipo relacional, y solo contiene una relación de tipo 1:M ocupa cuatro tablas ( la de uno, la de muchos, la de relación y la de detalle-relacion).
Si el problema incluye una segunda relación 1:M por ejemplo NotaDeVenta que se deriva de las mismas dos tablas básicas, entonces el modelo completo se resuelve con seis tablas ( las dos básicas, las dos de relación y las dos de detalle) y así sucesivamente.
Como se dijo anteriormente un problema sencillo de información por ejemplo el de una tienda de vídeo, ocupa unas cuatro o cinco tablas básicas, unos dos o tres procesos y cada proceso dos o tres relaciones mínimo, entonces el sistema se resuelve con 20 o mas tablas, las quejas sobre este modelo a Codd (creador del modelo relacional de bases de datos).
El caso de relaciones 1:1 se resuelve con solo tres tablas, solo agregar también en la tabla de relación la clave de muchos.
El caso de relaciones 1:Cte también se resuelve con tres tablas, solo agregar en la tabla de relaciones tantas claves de la tabla de constantes como constantes existan en la relación, por ejemplo si la relación es boleta de calificaciones y solo contiene tres materias, entonces se ocupan la tabla de alumnos, la de materias y la tabla de boleta, esta ultima tendría clave alumno, clave material, clave materia2, clave materia3.
El caso de relaciones M:M solo se resuelve localizando o identificando o de plano construyendo, la dos relaciones 1:M originales de donde salió este documento, por ejemplo en el informe al gobierno de todos los distribuidores de equipo de computo y todos los equipos que compraron en el mes, es probable que este informe se construya con las tablas de relaciones de facturas y notas de ventas.
Para propósitos de este curso y libro, solo se profundiza en relaciones 1:M. TAREAS PROGRAMACION VISUAL BASIC
1.- CONSTRUIR EL MODELO DE LAS CUATRO TABLAS PARA LA RELACIÓN EL CLIENTE COMPRA A CRÉDITO PARTES O REFACCIONES EN UNA “REFACCIONARÍA”.
2.- CONSTRUIR EL MODELO DEL CLIENTE APARTA JOYAS EN UNA “JOYERÍA”.
3.- CONSTRUIR EL MODELO COMPLETO DE CLIENTES Y PELÍCULAS CON LAS RELACIONES, RENTA PELÍCULAS, DEVUELVE PELÍCULAS, DAÑA PELÍCULAS, COMPRA PELÍCULAS.
4.- CONSIDERANDO EL PROBLEMA DE LOTES DE AUTOS, AUTOS, CLIENTES, TALLERES CONSTRUIR MODELO PARA LOS PROCESOS DE COMPRA DE AUTOS, Y RESTAURACIÓN DE AUTOS( ES CUANDO EL LOTE COMPRA LOS AUTOS Y LES DA UNA ARREGLADA PARA SU VENTA).

No hay comentarios: