Consulta com Chave Exportada

3 respostas
brunohenrique

Gostaria de saber a maneira mas viável de se realizar uma consulta a tabelas com chaves exportadas e trazer o valor de referência!

tenho feito desta forma, mas é o mais funcional e elegante?

rsTabela2 = stm.executeQuery("select * from tabela where cliente = '" + cliente + "';");

if (rsTabela1.next){
while (!rsTabela2.isAfterLast){
rsTabela1 = stm.executeQuery("select * from tabela1 where id = " + rsTabela1.getInt("chaveTabela1") + ";");

JOptionPane.showMessageDialog("Nome Cliente: " + rsTabela2.getString('Nome") );
JOptionPane.showMessageDialog("Rua: " + rsTabela1.getString("Rua) );

}

} else {
JOptionPane.showMessageDialog(null, "Registro não Encontrado");
}

foi só um exemplo tosco que usualmente eu faço!
agradeço aqueles que contribuirem com a sua preciosa opnião

3 Respostas

ddduran

usa Hibernate :smiley:

mas eu aconselho você tentar usar uma query só

E

porque voce não faz um subselect ou um join

exemplo bem basico

“select * from tabela1 where id in (select * from tabela where cliente = '” + cliente + "’ );

isso ja traria toda a informação que voce quer de uma vez bastando voce ordenar como quiser usando um order by, mas essa solução depende do select, dependendo da situação pode ser melhor usar um join que vai ter um custo menor para o banco de dados e melhor performance.

Espero ter ajudado

Paulo

E

porque voce não faz um subselect ou um join

exemplo bem basico

“select * from tabela1 where id in (select tabela.id from tabela where cliente = '” + cliente + "’ );

isso ja traria toda a informação que voce quer de uma vez bastando voce ordenar como quiser usando um order by, mas essa solução depende do select, dependendo da situação pode ser melhor usar um join que vai ter um custo menor para o banco de dados e melhor performance.

Espero ter ajudado

Paulo

Criado 30 de agosto de 2007
Ultima resposta 31 de ago. de 2007
Respostas 3
Participantes 3