Consulta proximo registro não funciona(Ajuda aiii)

3 respostas
Furyeyes

Galera estou com o seguinte problema, na tela de cadastro quando o usuário clicar próximo o programa busca os registros
ele até busca o primeiro, mas quando clico para buscar os próximos ele não me traz
Eu também estou com o mesmo problema no botão anterior, quando estou no ultimo registro e clico para o anterior ele me retorna null,
e o erro "Before start of result set"

Classe que busca o proximo

public static Hospede proximo(Hospede cliente) throws SQLException{
		
		try {
			String sql = "SELECT * FROM hospede";
			
			stm = conexao.prepareStatement(sql, ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY );
			rs = stm.executeQuery();
					
					rs.next();		
					//Hospede cliente = new Hospede();				
					cliente.setNome(rs.getString("Nome"));
					cliente.setCpf(rs.getString("CPF"));
					cliente.setIdade(rs.getInt("Idade"));
					cliente.setTelefone(rs.getString("Telefone"));
					cliente.setEnde(rs.getString("Endereco"));
					cliente.setNumero(rs.getString("Numero"));
					cliente.setCompl(rs.getString("Complemento"));
					cliente.setCidade(rs.getString("Cidade"));
					cliente.setEstado(rs.getString("Estado"));
					cliente.setQuarto(rs.getInt("Quarto"));				
					if(rs.isAfterLast()){
						rs.last();
					}							
										
				}catch(SQLException e){
					e.printStackTrace();
					JOptionPane.showMessageDialog(null,"Erro: "+e,"Erro ao procurar próximo registro",JOptionPane.ERROR_MESSAGE);
				}finally{
					rs.close();
					stm.close();
				}
				JOptionPane.showMessageDialog(null,"Erro: retornando null","Erro ao procurar registro",JOptionPane.ERROR_MESSAGE);
				return cliente;
			
	}//Fecha método próximo

Classe que imprime na tela

if(e.getSource()==bproximo){
			
			Hospede cliente = new Hospede();
			cliente = BancoDeDados.proximo();
			
			tnome.setText(cliente.getNome());
			tcpf.setText(cliente.getCpf());
			tidade.setText(String.valueOf(cliente.getIdade()));
			ttelefone.setText(cliente.getTelefone());
			tendereço.setText(cliente.getEnde());
			tnumero.setText(String.valueOf(cliente.getNumero()));
			tcomplemento.setText(cliente.getCompl());
			tcidade.setText(cliente.getCidade());
			boxestado.setSelectedItem(cliente.getEstado());
			tquarto.setText(String.valueOf(cliente.getIdade()));
			
		}

Me ajuda aii, só falta isso pro meu trabalho ficar pronto!!!

OBS: Eu procurei por isso no fórum mas não tinha exatamente sobre isso, por isso abri um tópico Aííííí

FALOU

3 Respostas

drsmachado

Bom, ao chamar este método, você exclui qualquer possibilidade de conitnuar

rs.close();
Aliás, por que não coloca os resultados em uma List e itera sobre ela?

Furyeyes

Mas com ou sem ele não chama os outros registros, como faria no caso de List…?

Furyeyes

ALGUÈM???

Me ajuda aiiii

Criado 18 de maio de 2012
Ultima resposta 26 de mai. de 2012
Respostas 3
Participantes 2