Bem, como disse, apenas olhei no javadoc sobre o fetchSize() e muito obrigado 
por me lembar disso.

        Para resolver encontrei outra maneira, que acho mais elegante de resolver o 
problema sem efetuar 
novamente uma querie (count do bd) desnecess�ria, (quando eu disse podre, � o fato de 
ter de efetuar uma 
querie somente para obter a quantidade de objetos, j� imaginou ter de fazer isso em 
uma  Lista?).
        
        A outra maneira, somente funciona se o seu driver suporta ResultSet com 
scrolls.

        // pegue o seu resultset
        ResultSet rs = getResultSet() ; 

        //V� ao �ltimo registro
        rs.last();
        
        // imprima ou armazene em vari�vel o �ltimo registro
        System.out.println(rs.getRow());
        
        // volte para o inicio do resultset, antes da primeira linha
        rs.beforeFirst();


        � isso, abra�o.

Claudio Miranda


26/11/2001 22:28:03, "Maiko A. Rocha" <[EMAIL PROTECTED]> escreveu:

>
>   Falando de ResultSet... meus dois centavos: 
>
>
>   getFetchSize *n�o* vai retornar a quantidade de registros da sua consulta.
>   Apenas retornar� a quantidade de registros que � recuperada em um acesso
>   ao banco de dados. Portanto se voc� fez setFetchSize(10) seu
>   getFetchSize() ser� *sempre* 10. 
>
>   Javadoc do setFetchSize: "JDBC 2.0 Gives the JDBC driver a hint as to the
>   number of rows that should be fetched from the database when more rows are
>   needed for this result set." Portanto, se a sua consulta ter� 100
>   resultados, voc� pode setar o fetchSize para 10 - no caso, voc� far� 10
>   acessos ao banco de dados - ou para 100 - da� voc� far� apenas um. 
>
>
>   A �nica maneira de saber quantos registros uma consulta vai retornar de
>   fato � fazendo COUNT no banco de dados. E n�o tem nada de podre nisso.
>   Lembre-se que o ResultSet apenas "aponta" para uma "�rea" do banco de
>   dados (que no Oracle � chamada de CURSOR) que � a respons�vel por retornar
>   os registros. Esta �rea n�o sabe previamente quantos registros ser�o
>   retornados pois, precisaria basicamente: 1 - percorrer todos os registros
>   da consulta 2 - armazenar cada registro desse em mem�ria. � por isso que
>   n�o � poss�vel saber previamente o count. E, pelo menos at� a API 2.0 do
>   JDBC, n�o h� nenhum m�todo para fazer isso. Fa�a ent�o o COUNT no banco de
>   dados. 
>
>   []s 
>
>
>   Maiko 
>----------------------------------
>
>     Claudio Miranda <[EMAIL PROTECTED]> escreveu: 
>
>
>     Para ter a quantidade de registros retornados por um ResultSet, utilize
>     o getFetchSize() (n�o sei ao certo, apenas olhei no Javadoc), ou efetue
>     a mesma query (podre), com a fun��o count() do Banco de Dados.
>
>     Claudio Miranda
>
>
>     Ruy Pedroso wrote:
>     >
>     > Ol� Pessoal,
>     >
>     > Como determinar o tamanho (quantidade de registros) de um RecordSet?
>     >
>     > Desculpem-me se a d�vida � b�sica, mas n�o estou conseguindo resolver
>     > sozinho. J� olhei a documenta��o e n�o encontrei um m�todo que
>     resolvesse o
>     > problema (tipo getCount ou length).
>     >
>     > Agrade�o qualquer ajuda.
>     >
>     > Abra�os,
>     > Ruy



_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


------------------------------ LISTA SOUJAVA ---------------------------- 
http://www.soujava.org.br  -  Sociedade de Usu�rios Java da Sucesu-SP 
d�vidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------

Responder a