Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

estrela666

VB.NET: contar registos

Recommended Posts

Olá! http://forum.imasters.com.br/public/style_emoticons/default/natal_biggrin.gif

 

Vejam esse código:

 

Dim conn As New SqlClient.SqlConnection("Data Source=localhost;Initial Catalog=pontos;User Id=liliana;Password=1234;")Dim cmd As New SqlClient.SqlCommand("SELECT nome_str_cli FROM tbl_clientes;", conn)Dim dr As SqlClient.SqlDataReaderconn.Open()dr = cmd.ExecuteReaderDo While dr.Read    txt_nome.Text = (dr("nome_str_cli"))Loop
Existe alguma maneira de contar os registos que o objecto dr retorna? Ou de saber se não retorna nenhum registo?

 

Obrigado!

Liliana

Compartilhar este post


Link para o post
Compartilhar em outros sites

:D bem, descobri que para saber se retorna registos basta fazer:

dr.HasRows=true then

Do While dr.Read

txt_nome.Text = (dr("nome_str_cli"))

Loop

else

txt_nome.text="Não tem registo"

end if

_linenums:0'>if <strong class='bbc'>dr.HasRows</strong>=true then Do While dr.Read txt_nome.Text = (dr("nome_str_cli")) Loopelse txt_nome.text="Não tem registo"end if

Mas gostaria ainda de saber se há maneira de contar os registos. Essa tem sido dificil de encontrar. Se descobrir coloco aqui também!

 

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se não me engano, um DataReader é forward-only, portanto você economiza não alocando todos os registros antes de percorrê-los. Essa vantagem também impossibilita que você conte os registros antes de percorrê-los. Portanto, o mais aconselhável no seu caso seria usar uma DataTable para armazenar o resultado da consulta. Com ela você poderia saber a quantidade de registros.Abraços,Graymalkin

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.