Pessoal boa tarde, gostaria de saber se é possível executar uma consulta sql em dois bancos distintos(access) tendo seu retorno em apenas um ResultSet?
Criei duas conexões com os bancos que funcionam normal, mas gostaria de montar um único select p/ os dois bancos, se não for possível terei de consultar um banco de cada vez e depois fazer outras comparações via códigio Java mesmo.
Esse tipo de coisa é possível com o MS SQL Server e se não me engano com o Oracle (acho que ambos permitem consultas “heterogêneas”, mas não com o Access.
moacir_os
Thingol me parece que diretamente no Access(SGBD) vc conseque montar uma query am dois bds, mas o que não consegui entender é como montar essa consulta dentro de um programinha Java.
try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");conexao1=DriverManager.getConnection("jdbc:odbc:Contas"); // Conexao com fonte de dados Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); conexao2 = DriverManager.getConnection("jdbc:odbc:Estoque");//Conexaocomfontededados}catch(Exceptione){System.out.println(e.getMessage());}
Defini dois objetos para conexão com os dois bds diferentes agora não consigo montar a query. Não sei se é possível p/ um objeto Connection apontar para dois bds(2 arquivos .mdb) diferentes, ou se teria como fazer algum “esquema” com um objeto da classe Statement.
Mas muito obrigado pelo comentário, caso eu consiga resolver posto a solução aqui.
T+
moacir_os
Conforme havia dito que colocaria a solução aqui caso conseguisse resolver meu problema e como consegui ai vai …
Havia lido em algum site/fórum que era possível realizar queries em mais de um banco Access dentro do próprio Access, então o que fiz p/ solucionar meu problema, apenas coloquei meu programinha java no mesmo diretório dos BDs, agora consigo realizar consultas da seguinte forma: SELECT campo1, campo2 …campoN FROM db1.mdb, db2.mdb WHERE blá blá blá.… detalhe que não preciso de dois objetos Connection nem Statement basta apenas a conexão p/ um dos MDBs p/ que consiga realizar queries no outro banco (claro que estando ambos bds no mesmo diretório), ex.: estabeleço conexão com o BD1 e realizo consultas no BD1 e BD2 como mencionei anteriormente(creio que o Driver JDBC se encarregue de encontar o BD2 desde que ele esteja no mesmo diretório)…