olá, estou precisando fazer vários SELECT em algumas tabelas, mas sempre quando tento fazer uma pesquisa com um ResultSet aberto ele diz que: Operation not allowed after ResultSet closed.
Sei que não posso ter diferentes ResultSet’s ligados ao mesmo Statement. Então como faço para fazer pesquisas encadeadas?
Exemplo:
private Endereco retornarEndereco(int id) throws SQLException
{
ResultSet rs = stmt.executeQuery("SELECT end_endereco, end_bairro, end_complemento, end_cep, fk_cod_estado, fk_cod_cidade FROM cur_endereco WHERE fk_pss_id = "+ id);
rs.next();
String end = rs.getString(1);
String bar = rs.getString(2);
String com = rs.getString(3);
String cep = rs.getString(4);
int est = rs.getInt(5);
String sest = retornaEstado(est);
int cid = rs.getInt(6);
String scid = retornaCidade(cid);
return new Endereco(end, bar, com, cep, sest, scid);
}
private String retornaEstado(int cod) throws SQLException
{
ResultSet rs = stmt.executeQuery("SELECT sgl_estado FROM estado WHERE cod_estado ="+ cod);
rs.next();
return rs.getString(1);
}
/*
* Para eu saber a sigla do estado eu tenho qua procurar o código dela na tabela 'cur_endereco' e em seguida pegar a sigla do estado na tabela 'estado',
* essa é minha dúvida, como eu faço essas pesquisas encadeadas?
*/
grato.