O problemo � que a maioria quer esta quantidade de linahs antecipado por
exemplo para fazervarias p�ginas jsp de resultados.
Contar as linhas assim � facil mas geralmente inutil pois:
while (r.next(){
<snip>
}
int linhas = r.getRow();
Faz a mesma coisa.
select count(*) from table funciona tb com join:
select a.a b.b from a, b where b.a = a.a;
select count(*) from a, b where b.a = a.a;
Ae eu j� sei a quntidade de linhas a receber antes de fazer o select que
me retorna um resultset.
Eduardo de S. Bernardino wrote:
> Na minha humilde opini�o, acho que a melhor solu��o fazer assim:
>
>
>
> int ii_rows = 0;
>
> boolean b_next = rs.next();
>
>
>
> while( b_next )
>
> {
>
> // --- c�digo para "manipular" dados do resultset.
>
>
>
> // --- fim do c�digo para "manipular" dados do resultset.
>
> ii_rows++;
>
> b_next = rs.next();
>
> }
>
>
>
>
>
> Isso porque SELECT * FROM TABELA � meio furado, se o cara estiver
> fazendo um Join esta solu��o foi por �gua abaixo. Com o trecho acima �
> poss�vel varrer o Result Set, manipular os dados e por fim contar o
> n�mero de linhas. Apesar de mais lento, acho que � mais eficiente. Bom
> acho que � isso...
>
>
>
>
>
> Abra�os
>
> Eduardo.
>
>
>
> ----- Original Message -----
>
> From:Sven van �t Veer <mailto:[EMAIL PROTECTED]>
>
> To:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
>
> Sent: Monday, July 02, 2001 1:48 PM
>
> Subject: Re: [java-list] rapidinha
>
>
> Para esclarear:
> JDBC n�o tem methodo que indica a quantidade de linhas retornado.
> J� que ResultSet devolve um Cursor do banco � impossivel verificar
> a quantidade de linhas retornado (SQL somante faz isso com select
> count()).
> getUpdateCount() do statement devolve a quantidade de linhas
> afetado com statement.executeUpdate() ou -1 se for um ResultSet.
> rs.getFetchSize() devolve a quantidade de linhas no Cursor tipo
> rs.setFetchSize(10);
> rs.executeQuery("select * from table";
> Agora o resultset contem 10 linhas e quando faz um rs.next() na
> ultima linha o rs faz um fetch de mais 10 linhas.
>
> A melhhor maneira de fazer isso � com select count(*) from table
>
> em JDBC 2.0 d� p/ fazer assim:
> rs.last();
> int count = rs.getRow();
> rs.beforeFirst();
>
> Mas isso � muito mais caro em processamento j� que o ResultSet
> INTEIRA tem que passar pela rede (a n�o ser que o RDBMS roda na
> mesma maquina).
>
> Sven
>
> Luis Henrique Bogo wrote:
>
>> - Use o m�todo getUpdateCount( ) do Statement
>>
>> ele retorna o nr de linha do �ltimo Select realizado
>>
>> acho... :-)
>>
>> Testa a�...
>>
>> =================================
>> Luis Henrique Bogo
>> Mestrado Eng. Produ��o e Sistemas
>> UFSC - Floripa - Brasil
>> =================================
>> Babe na ilha: www.ilhafloripa.com.br/frame.htm
><http://www.ilhafloripa.com.br/frame.htm>
>>
>> "N�o h� stress que um bom dia de surf n�o cure"
>>
>> "Casamento � o triunfo da imagina��o sobre a intelig�ncia"
>>
>>
>> ----- Original Message -----
>> From: "Gl�cio Nicoletti Jr" <[EMAIL PROTECTED]>
><mailto:[EMAIL PROTECTED]>
>> To: "'Jason Douglas de Oliveira BOL2 '" <[EMAIL PROTECTED]>
><mailto:[EMAIL PROTECTED]>;
>> <[EMAIL PROTECTED]> <mailto:[EMAIL PROTECTED]>
>> Sent: Monday, July 02, 2001 9:58 AM
>> Subject: RE: [java-list] rapidinha
>>
>>
>>> Bom dia,
>>>
>>> Nao tentei ainda, mas de repente esse metodo retorna o numero de tuplas do
>>> objeto ResultSet, em JDBC 2.0.
>>>
>>> rs.getFetchSize()
>>>
>>> Ate mais.
>>>
>>>
>>>
>>> -----Mensagem original-----
>>> De: Jason Douglas de Oliveira BOL2
>>> Para: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
>>> Enviada em: 02/07/01 09:33
>>> Assunto: Re: [java-list] rapidinha
>>>
>>> Boa Dia Pedro.
>>>
>>> O ResulSet n�o tem esse m�todo.
>>>
>>> Abra�o!!!
>>>
>>>
>>> ----- Original Message -----
>>> From: Pedro @ wiz <mailto:[EMAIL PROTECTED]>
>>> To: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
><mailto:[EMAIL PROTECTED]> <mailto:[EMAIL PROTECTED]>
>>> Sent: Friday, June 29, 2001 1:35 PM
>>> Subject: Re: [java-list] rapidinha
>>>
>>> _____
>>>
>>> Acesso pelo menor pre�o do mercado! R$ 14,90 nos 3 primeiros meses!
>>> ASSINE AGORA! http://www.bol.com.br/acessobol/
>>> <http://www.bol.com.br/acessobol/>
>>>
>>> _____
>>>
>>> Sendo rs o record set acho que voce pode usar rs.length()
>>>
>>> [] s Pedro
>>>
>>> ----- Original Message -----
>>> From: Inform�tica - [Kohlbach Motores]
>>> <mailto:[EMAIL PROTECTED]>
>>> To: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
><mailto:[EMAIL PROTECTED]> <mailto:[EMAIL PROTECTED]>
>>> Sent: Thursday, June 29, 2000 9:59 AM
>>> Subject: [java-list] rapidinha
>>>
>>>
>>> Bom dia a Todos,
>>> Estou trabalhando a pouco tempo com JDBC, e s� estou com uma d�vida,
>>> como posso retornar o nr. de rows retornadas quando executo uma query em
>>> um banco?
>>>
>>> Se alguem puder me dar uma luz...
>>> Agracedo desde jah!
>>>
>>>
>>> [Carlos H.]
>>> Centris Tecnologia Ltda.
>>>
>>>
>>>
>>> ------------------------------ 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]
><mailto:[EMAIL PROTECTED]>
>>> -------------------------------------------------------------------------
>>>
>>>
>>
>>
>> ------------------------------ 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]
><mailto:[EMAIL PROTECTED]>
>> -------------------------------------------------------------------------
>>
>>
>
------------------------------ 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]
-------------------------------------------------------------------------