getResultSet () "deve ser chamado apenas uma vez por resultado"
De acordo comdocumentaçã paragetResultSet
dentrojava.sql.Statement
, diz
Recupera o resultado atual como um objeto ResultSet. Este método deve ser chamado apenas uma vez por resultad
sando um código de teste, executeiexecuteQuery()
e várias chamadas paragetResultSet()
e observou que oResultSet
retornou apontado para o mesmo objeto. Acho que não está retornando um @ diferenResultSet
que você precisaria fechar individualmente. Mas é claro que isso pode ser exclusivo dos meus drivers JDBC.
Olhando para odocumentaçã paraResultSet
diz
Um objeto ResultSet padrão não é atualizável e tem um cursor que avança apenas. Portanto, você pode iterá-lo apenas uma vez e somente da primeira linha até a última linh
Parece ser um bom motivo para não ser uma boa ideia chamá-lo várias vezes, pois pode levar a uma situação de "pegadinha". Se esse foi o único motivo, achei que eles poderiam ter dito isso, então acho que pode haver mais do que apenas iss
Então alguém sabe por que não se deve ligargetResultSet
mais de uma vez por resultado? Estequestã foi o que me deixou curioso em primeiro lugar.