Aunque no resulta muy habitual sí es posible que un único campo de una tabla A se relacione al mismo tiempo con dos o tres de otra tabla B. En tal caso, se tendrán que generar relaciones múltiples entre ambas tablas.
Vamos a tomar como ejemplo una base de datos que intenta mecanizar una empresa de autobuses urbanos, como la que hay en cualquier ciudad. Por cada línea queremos controlar la siguiente información:
Piensa que pueden existir líneas circulares que, por lo tanto, tengan la misma parada inicial y final. Además, tanto las paradas iniciales como finales pueden ser compartidas por más de una línea.
Para este planteamiento se han creado dos tablas específicas dentro del conjunto de toda la estructura: Líneas y Paradas
Nuestro objetivo ahora es efectuar las relaciones entre codparada y paradain/paradafin. Comenzaremos realizando la primera de ellas de la forma habitual, activando las opciones Exigir integridad referencial y Actualizar en cascada los campos relacionados.
A continuación, arrastramos codparada hasta paradafin y entonces Access mostrará el siguiente cuadro al detectar la existencia de una relación previa:
La clave reside en contestar NO. Entonces se abrirá un nuevo cuadro Modificar relaciones donde marcaremos las opciones antes comentadas. Tras Aceptar, podremos comprobar cómo Access ha creado un clon llamado PARADAS_1, a partir de la tabla original.
Sin embargo, el duplicado sólo existe dentro del ámbito de las Relaciones, en la lista de objetos de tipo Tabla no hay ningún cambio.
El planteamiento que acabamos de exponer se podría aplicar, por ejemplo, para los equipos de un partido de fútbol, los tenistas de un partido, la terna de toreros…
En un próximo artículo, veremos cómo debemos gestionar este tipo de relaciones al efectuar consultas e informes.
Acerca del autor