Enlazar bases

Tengo 4 bases iguales que corresponden a 4 años distintos y quisiera saber si existe alguna manera de poder realizar una búsqueda conjunta a la vez y no tener que ir base por base. Es decir, si existe alguna forma de enlazarlas para realizar una búsqueda única.

1 Respuesta

Respuesta
1
Supongamos que las bases de datos que quieres consultar conjuntamente:
- Se denominan BBDD2001.mdb, BBDD2002.mdb, BBDD2003.mdb y BBDD2004.mdb.
- Que cada una de ellas tiene tablas definidas con los mismos campos, por ejemplo:
. Una tabla que se llama TABLA1, con cuatro campos:
TABLA1Clave, que es el índice de la tabla.
TABLA1Campo1.
TABLA1Campo2.
TABLA1Campo3.
. Otra tabla que se llama TABLA2, con tres campos:
TABLA1Clave, que es el índice de la tabla.
TABLA1Campo1.
TABLA1Campo2.
Bajo estos supuestos, crea una nueva base de datos vacía. Supongamos que la denominas UnirBBDD.mdb. Una vez abierta, empleando el menú deberás vincular las tablas de las otras cuatro ordenadamente. En el supuesto anterior, los pasos a ejecutar serían los siguientes:
- Marcando en el menú de la base de datos UnirBBDD.mdb las opciones 'Archivo > Obtener datos externos > Vincular tablas...', se visualiza una ventana en la que debes seleccionar la base de datos BBDD2001.mdb en su ubicación. Después debes pulsar el botón 'Vincular'. Se mostrará, entonces, una nueva ventana titulada 'Vincular tablas' con todas las tablas de la base de datos BBDD2001.mdb. En ella deberás seleccionar las tablas que desees tratar conjuntamente. En el supuesto del ejemplo, TABLA1 y TABLA2 (o pulsar 'Seleccionar todo', si deseas tratarlas todas). Después, debe pulsarse 'Aceptar'.
- En la ventana de base de datos de UnirBBDD.mdb, se habrán añadido las tablas TABLA1 y TABLA2. Pulsando con el botón de la derecha del ratón sobre TABLA1 y seleccionando 'Cambiar nombre', se cambiará TABLA1 por TABLA1BD1. Del mismo modo se cambiará el nombre de TABLA2 por TABLA2BD1.
- Los dos pasos anteriores se repetirán con la base de datos BBDD2002.mdb, en el ejemplo, cambiando los nombres de TABLA1 y TABLA2, respectivamente, por TABLA1BD2 y TABLA2BD2.
- Análogamente, los dos primeros pasos se repetirán con la base de datos BBDD2003.mdb, en el ejemplo, cambiando los nombres de TABLA1 y TABLA2, respectivamente, por TABLA1BD3 y TABLA2BD3.
- Con BBDD2004.mdb se procederá del mismo modo, cambiando los nombres de TABLA1 y TABLA2 después de vincularlas por TABLA1BD4 y TABLA2BD4.
Debes crearte en la base de datos UnirBBDD.mdb una nueva consulta, que es conveniente que denomines TABLA1, siguiendo con el supuesto inicial, con la siguiente query:
SELECT TABLA1BD1.*
FROM TABLA1BD1;
UNION SELECT TABLA1BD2.*
FROM TABLA1BD2;
UNION SELECT TABLA1BD3.*
FROM TABLA1BD3;
UNION SELECT TABLA1BD4.*
FROM TABLA1BD4;
Puedes introducirla desde la pestaña de consultas de la base de datos, definiendo una nueva consulta en modo diseño y pulsando el botón SQL del menú.
Del mismo modo, debes crearte otra nueva consulta, que en el ejemplo se denominaría TABLA2, con la query:
SELECT TABLA2BD1.*
FROM TABLA2BD1;
UNION SELECT TABLA2BD2.*
FROM TABLA2BD2;
UNION SELECT TABLA2BD3.*
FROM TABLA2BD3;
UNION SELECT TABLA2BD4.*
FROM TABLA2BD4;
Una vez realizado este procedimiento con todas las tablas que desees unir, si importas con la opción del menú de base de datos 'Archivo > Obtener datos externos > Importar...' tus formularios, consultas, informes, macros y módulos que utilizaban en alguna de las versiones anteriores de la base de datos las tablas, los objetos importados seguirán funcionando en la base de datos UnirBBDD.mdb, con los siguientes condicionantes:
- No podrás agregar registros.
- No se mantiene la integridad referencial de las tablas.
No obstante, si lo que deseas es tan sólo consultar u obtener informes, el resultado será el que pareces necesitar.
Espero que esta solución te sirva. Yo la tengo implantada hace años y para realizar una facturación ¡FUNCI

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas