Select usando JOIN entre databases DB2 distintos (máquinas diferentes)

2 respostas
T

Preciso fazer um join entre tabelas de bancos diferentes.
Ambos são DB2 porém em IP’s distintos.
Já cataloguei os mesmos e criei as conexões.
Minha dúvida é como fazer um select com inner join, visto que estou usando Statements distintos.
Alguém teria algum exemplo ou roteiro de como se faz isso?

[color=blue]Connection conn1 = null;

Statement stm1 = null;

try {

String Driver = new String(COM.ibm.db2.jdbc.app.DB2Driver);

String Url = new String(jdbc:db2:banco1);

String user = 

String password = 

Class.forName(Driver);

conn1 = DriverManager.getConnection(Url, user, password);

stm1 = conn1.createStatement();

}

catch (Exception e) {

out.println(Ocorreu exceção.);

}
Connection conn2 = null;

Statement stm2 = null;

try {

String Driver = new String(COM.ibm.db2.jdbc.app.DB2Driver);	

String Url = new String(jdbc:db2:banco2);

String user = 

String password = 

Class.forName(Driver);

conn2 = DriverManager.getConnection(Url, user, password);

stm2 = conn2.createStatement();

}

catch (Exception e) {

out.println(Ocorreu exceção.);

}[/color]

2 Respostas

cv1

Eu nao consigo ver nenhum jeito de fazer um join entre tabelas que estao em duas Connections diferentes… talvez a saida seja fazer o join na mao, iterando sobre os registros das duas e comparando. Nao eh lah a coisa mais bonita do mundo, mas…

mister_m

Não lembro se existe isso no DB2, mas geralmente a melhor solução pra esses problemas é criar uma view/sinônimo pra tabela remota em um dos bancos e deixar que seu SGDB se preocupe com esse problema por você.

Criado 6 de abril de 2005
Ultima resposta 6 de abr. de 2005
Respostas 2
Participantes 3