bom gente ja discutimos como criar uma conexão com o BD agora pra todos nos que estamos iniciando, como projetar as entradas e saidas do BD,em linguagens como DELPHI,VB E COMPANIA vc tinha lá um objeto TTable ou Recordset e vc ia adicionando,Alterando e Excluindo Registros e o Reflexo no BD era IMEDIATO.
E no JAVA como proceder ? bom eu executo um PrepareStatement com uma CONSULTA INCLUSÃO mais meu ResultSet não tem o reflexo da alteração no BD … e como faço pra navegar pelo RESULTSET para tras e para frente como no DELPHI,C,VB ???
Que maneira e melhor ? eu criar uma serie de objetos por exemplo clientes, coloca-los em um array e ir adicionando eles no meu BD.
Se eu entendi direito a sua questão, você quer navegar pra frente e pra trás no recordset, é isso?
Uma das maneiras é armazenar limitar a consulta a um numero qualquer e armazenar este numero em uma sessão. depois voce pega esse numero e vai incrementando… estou dando uma luz apenas…
Uma outra opção é usar um bean que foi criado pela sun, chamado CachedRowSet. Como ele funciona? Bom, ele lê o seu recordset e armazena na memória, depois você navega nele. O problema neste caso é que se o RecordSet for muito grande, vai ocupar muita memória… mas se o banco de dados nao tiver muitos registros, é uma ótima opção. Você pode encontrar o CachedRowSet e instruções de como usa-lo no site da sun: www.java.sun.com/jdbc ou procure no site da sun por CachedRowSet.
Acredito que exista muitas outras formas de fazer isso, mas as que eu conheço e uso são essas. Se alguém souber de outra solução, por favor sinta-se a vontade para nos mostrar.
A partir de JDBC 2.1, se não me engano, o ResultSet já reflete as operações sofridas automaticamente no banco. Não sei bem se é o próprio ResultSet ou alguma classe filha dele. No Core Java ou no livro de JDBC da O’Relly tem algo sobre isso. Quando eu confirmar, se ninguém já o tiver feiro, eu volto e respondo.
É isso mesmo. A partir da versão 2.0, métodos como updateXXX() e updateRow() foram adicionados. Procure na API javadoc que deve haver algo falando sobre isso. Ou leia no livro JDBC e Java da O REILLY
Com o ResultSet em AutoCommit se eu executar consultas do tipo INCLUSSÃO,EXCLUSSÃO,ALTERAÇÃO com o PrepareStatement era será atualizado automaticamente ? Senão for como faço para atualiza-lo ?
Antes de mais nada FELIZ NATAL e um PROPERO ANO NOVO … :x-mas:
Legal então eu posso ter meu ResultSet mostrando resultados na tela e executar os comando de ALTERAÇÃO,INCLUSÃO e EXCLUÇÃO via PrepareStatement e nem Ficar esquentando pois ele automaticamente ira atualizar-se com as alterações executadas pelo outro comando, foi isso que eu ENTENDI, se foi blz …