Conteúdo ResultSet

Galera gostaria de saber como verificar se há conteúdo dentro da minha ResultSet antes de lidar com ela.

Se uso um

if(!rs.next())

pra verificar, acabo perdendo a primeira linha caso exista.

Alguém sabe como contar quantas linhas vieram na ResultSet?

valeu moçada! :idea:

de acordo com o javadoc, quando vc cria um resultSet, o indicador esta posicionado antes da primeira linha, ou seja, o primeiro next() nao vai fazer vc perder a primeira linha…

Correto, mas quando dou um rs.previous() ou rs.first(), ele não está retornando.
Não estou conseguindo retornar ao primeiro valor. :wink:
somebody help me?

[quote=diegom]Correto, mas quando dou um rs.previous() ou rs.first(), ele não está retornando.
Não estou conseguindo retornar ao primeiro valor. :wink:
somebody help me?[/quote]
use o rs.beforeFirst(), pq vc precisa navegar o ponteiro p/ antes do primeiro registro, p/ quando vc fizer rs.next() de novo funcione.
qualquer duvida de uma lida nas docs.

[]'s

Sorry jgbt mas eu esqueci de mencionar que já tinha tentado utilizar o rs.beforeFirst().

Deu o erro abaixo

java.lang.Exception: Ocorreu um erro ao executar o sql :Operação inválida para encaminhar apenas conjunto de resultados: beforeFirst
	at admin.bd.ValorHoraBD.buscarValor(ValorHoraBD.java:217)
	at admin.ValorHoraServlet.doPost(ValorHoraServlet.java:76)
	at admin.ValorHoraServlet.doGet(ValorHoraServlet.java:31)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:696)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:200)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:209)
	at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)
	at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
	at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
	at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
	at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)
	at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)
	at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)
	at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
	at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
	at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
	at java.lang.Thread.run(Thread.java:534)

Será que esse erro provem da forma que está configurado a navegação no ResultSet?

thennn, somebody help me?

tentou rs == null!!!

vc precisa criar um ResultSet navegavel nas duas direções e seu driver jdbc tem que ter implementado corretamente esses metodos, o que as vezes não acontece.

[]'s

Valeu Thiago, sua resposta já é meia solução.
E obrigado jgbt, mas não é o driver JDBC que tem que ser configurado e sim o tipo de conexão.
Já consegui…valeu!!!

o que eu quiz dizer é que nem todos drivers implementam corretamente esses metodos de navegação pelo ResultSet. eu ja usei uma versão p/ firebird que não fucnionava por exemplo. se eu desse um next(), não conseguia voltar mais. pq a API JDBC é baseada em interfaces, e que implemnta isso é o fabricante do bd que disponibiliza o driver. mesmo qu eu tentasse criar um ResultSet navegavel.

[]'s

O PROBLEMA que vejo na GALERA JAVA é esse … NUNCA postam as soluções … omitem …

Open Source neles … PHP na veia … fora FREE …

nao que eu nao use java … mas o perfil do profissional java é esse … OMITIR …

conheço um arquiteto java … sabe tanto … que nao ajuda ninguem … kkkk … hoje devoro ele …

walew …
fikem com Deus …
diba bastards … ao som de Onix - slam …

Diegom !!

Tem como você postar a solução !

Estou com o mesmo problema :oops:

Tks a lot