ResultSet vazio

Sou novo no ramo e estou precisando de ajuda. se puderem me ajudar a resolver esse problema que o resultset só retorna vazio. a conexão com o banco esta ok, a tabela esta populada, mas não consigo capturar os dados.

Observação: Banco MySQL Server versão 5.7.

int id = 0;
try {
	connEstado.executaSQL("SELECT  * FROM estado" );
	
	id = connEstado.rs.getInt("idEstado");
	String nn = connEstado.rs.getString("nome");
	String sg = connEstado.rs.getNString("sigla");

	if (!connEstado.rs.next()) {
		JOptionPane.showMessageDialog(rootPane, "botao salvar " + id);
		JOptionPane.showMessageDialog(rootPane, "botao salvar " +nn);
		JOptionPane.showMessageDialog(rootPane, "botao salvar " +sg);
	} else {
		JOptionPane.showMessageDialog(rootPane, "Result Set Vazio");
	}
} catch (SQLException ex) {
	JOptionPane.showMessageDialog(null, "Erro ao Salvar os Dados! \n Erro: " + ex );
}

!connEstado.rs.next()

Porque ta negando ? o next retorna true enquanto houver elementos, por isso muita vezes se usa.

while(rs.next){
}

boolean
next()

Moves the cursor froward one row from its current position. Provavelmente ele tá vindo populado, é só ler o seu if, se ele não tiver registros entra no if. Um simples break point com debug resolveria isso, era só ver o valor da rs em tempo de execução.

3 curtidas