Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Consulta a varios servidores (https://www.clubdelphi.com/foros/showthread.php?t=29133)

AzidRain 13-01-2006 00:33:52

Consulta a varios servidores
 
Tengo instalados y corriendo tres servidores MySQL en ubicaciones distintas. Hasta ahora me funcionan de maravilla y se utilizan unicamente para consultar datos. Ahora bien, cada uno tiene exactamente la misma estructura en sus bases de datos (mismos nombres de DB, de tablas, campos etc.)

Como se puede hacer un SELECT que me devuelva una union de las tablas de los tres servidores. Se que en el SELECT puedes elegir tablas de varias bases de datos usando un alias, pero si las DB están en otros servidores??

Lo que hago ahora es consultar cada servidor por separado pero quiero poder tener un consolidado de los tres resultados. Se puede usando solo el SQL o hay que hacer algo adicional.

Utilizo Delphi 6, las Zeos y MySQL 4.1

La consulta es similar a esto:

SELECT NOMBRE,FECHA FROM FACTURAS WHERE FECHA="2005/12/01"

como las DB son las mismas en todos los servidores la consulta me devuelve informacion de cada servidor, pero no se como hacer para "pegar" los tres resultados para mostrarlos en un dbGRID.

Alguna sugerencia???

Bicho 13-01-2006 10:52:12

Sugerencia
 
Hola, no he trabajado con MySQL, y he estado buscando por los foros sin mucha fortuna, así que ahí va mi sugerencia.

Yo trabajo con Informix y seguramente no funcionará igual que MySQL pero alomejor te orienta y te sirve de ayuda. Te comento con Informix al realizar tú consulta a tres máquinas distintas podría quedar de la siguiente manera:

Código SQL [-]
SELECT a.NOMBRE, a.FECHA 
  FROM NOMBREMAQUINA1:FACTURAS a, --le ponemos un alias a cada tabla 
          NOMBREMAQUINA2:FACTURAS b,
          NOMBREMAQUINA3:FACTURAS c,
 WHERE a.FECHA="2005/12/01"

//Luego ya haces la unión entre las tablas con un JOIN.

Saludos


La franja horaria es GMT +2. Ahora son las 03:23:50.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi