Navegar pelos registros de uma tabela usando JButton's
10 respostas
L
Linkel
:lol: Olá, galera!
Sou iniciante em java e estou criando minha primeira aplicação com acesso a Banco de Dados utilizando o NetBeans com Firebird2 (jaybird 2.1)…
Eu gostaria de saber como criar um esquema de navegação pelos registros de uma tabela… Com as quatro funções (primeiro <<, anterior <, próximo >, último >>).
:?: Quais métodos eu usaria?
:?: O que eu precisaria para clicar no botão e ele executar uma dessas funções?
:!: Quem puder me ajudar, por favor, ficarei muito grato!
Primeiro você tem que conectar-se ao BD e fazer um SELECT para trazer os registros da tabela. Para isso, você pode usar JDBC. Este tutorial do GUJ vai te ajudar:
Olá pessoal, tudo bem. Estou precisando de uma ajuda aqui. Eu tenho um método actionPerformed e o botão que ao ser clicado, move o cursor do banco para o próximo registro.
O probema começa aqui: quando eu clico nele ele move o cursor para o primeiro registro quando os campos do formulários estão vazios. Até aí está certo. Mas quando eu clico
novamente nele, ele não move o cursor para o próximo registro quando deveria. Espero ter sido claro e conto com o auxílio de vocês para me ajudarem a corrigir o meu equívoco. Muito obrigado desde já. Segue abaixo o meu método:
privateclassBtnProxActionListenerimplementsActionListener{publicvoidactionPerformed(ActionEvente){Stringurl="jdbc:mysql://127.0.0.1/javabd2";Stringusuario="root";Stringsenha=null;var= 0;try{Connectionconx=DriverManager.getConnection(url,usuario,senha);stt=conx.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);ResultSetnx=stt.executeQuery("SELECT * FROM cliente");while(nx.next()){txtNmCl.setText(nx.getString("cl_nome"));txtRgCl.setText(nx.getString("cl_rg"));txtCpfCl.setText(nx.getString("cl_cpf"));txtTelCl.setText(nx.getString("cl_tel"));txtEndCl.setText(nx.getString("cl_end"));}JOptionPane.showMessageDialog(null,"deu certo");}catch(SQLExceptione1){JOptionPane.showMessageDialog(null,"deu erro");}}}
F
Fernando_Generoso_da
Não entendi direito, mas apontar o cursor para a posição anterior ao primeiro registro não funcionarioa??
rs.beforeFirst();
J
Jefries
Galera, precso de ajuda será que algue não tem um exemplo completo ai para me ajudar, estou precisando criar estes bootões de navegação também!!!
F
fabio_kaspar
na verdade, eu precisaria do código para o usuário poder navegar entre os registros do banco por meio de botões de navegação. Eu criei um código que não deu muito certo, pois o usuário não
consegue sair do primeiro registro ao clicar no botão "próximo registro". Olha como eu fiz: Qual seria a lógica correta para este caso? Aguardo resposta.
publicvoidactionPerformed(ActionEvente){Stringurl="jdbc:mysql://127.0.0.1/javabd2";Stringusuario="root";Stringsenha=null;try{Connectionconx=DriverManager.getConnection(url,usuario,senha);stt=conx.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);ResultSetnx=stt.executeQuery("SELECT * FROM cliente");nx.last();intqtd=nx.getRow();nx.first();if(qtd>0){while(nx.next()){txtNmCl.setText(nx.getString("cl_nome"));txtRgCl.setText(nx.getString("cl_rg"));txtCpfCl.setText(nx.getString("cl_cpf"));txtTelCl.setText(nx.getString("cl_tel"));txtEndCl.setText(nx.getString("cl_end"));}qtd--;
M
Marky.Vasconcelos
Voce pode ter como base isso daqui.
Da pra pegar o codigo fonte também.
F
Fernando_Generoso_da
Marky…
O q eu temo nessa abortagem é o acesso ao banco a cada clique…Porque não tem como fugir do neguinho ficar clicando por exemplo 30 vezes seguidas sem parar, no botão para navegar da letra A à letra C, por exemplo, quando tiver uma quantidade um pouco maior de registros…
Eu implementaria uma navegação a um list, por exemplo, e alimentaria esse list a cada 50, 100 registros…
É minha opinião.
Fernando
J
Jefries
Interessante, mas como você faria esta implementação??
Trazendo uma lista de 50 registros, tem como postar ai algum exemplo???
To precisando de uma força!!
Valeu!!
F
Fernando_Generoso_da
Bom…eu dei uma idéia geral…agora teria que elaborar o algoritmo…mas nada complicado. Apenas ter variáveis de controle na navegação dos dados de um list…
Monta aí e depois mostra pra gente…qualquer dúvida estamos aí.