Olá pessoal. É o seguinte: Tenho que fazer uma Agenda com acesso à Banco de Dados com uma Interface Gráfica e tudo mais. Nesta Agenda deve ter o botão OK que grava no BD, o botão Limpar que limpa todos os campos, o botão > que mostra na tela o próximo registro da Agenda, o botão < que mostra o registro anterior, o botão << que mostra o 1° registro e o botão >> que mostra o último registro. A minha dificuldade é implementar o botão > e pra isso eu estou usando o ResultSet com a variável rs assim: ResulstSet rs; e estou usando o método rs.next(); dentro do método do botão, com esse código:
Vc da um select pega o primerio registro e fecha tudo…
Ai, quando clica no botão >, ele faz isso tudo de novo, entendeu???
É que vc esta pegando sempre o primeiro registro.
Para executar isso de forma correta, vc tem que pegar sempre o registro atual + 1, de alguma forma, por um ID, número de linha ou qualquer outra forma.
Ola eu tenho um outro problema ir para frente e para ultimo esta certo mas quando eu uso previous ele me da um erro No not implemented
Voce teria como me ajudar
O seu problema eu já tive e a forma que consegui resolver foi :
1 - Criar um VO ( um Bean java com set e get somente) para “encapsular” os dados que retorno da Query;
2 - Fiz a query e gerei uma Colleçao com os objetos encontrados. Ex:
ArrayList list = new ArrayList();
rs.next(){
ExemploVO vo = new ExemploVO();
vo. setNome(r.getString("nome"));
vo. setSbrubles(r.getString("sbrubles"));
....
list.add(vo);
}
Depois é só “navegar” nos dados da coleçao:
int indice = 0 ; // ou valor que deve ser 1,2,3,...
ExemploVO vo = (ExemploVO) list.get(indice);
Acho que isso resolver o seu problema e evita que vc crie outros, como por exemplo ter conexão aberta, statament aberto e por aí vai…
Isso ocorre, porque se vc criar um Statement sem nenhum argumento, o seu ResultSet, será somemente para leitura e poderá somente seguir para frente passando de linha por linha.
Se quiser criar um ResultSet navegavel, veja aqui como fazer. Procure por Scrollable