logo       

Re: MoveNext, RecordCount e Provider: msg#00692

db.postgresql.brasil

Subject: Re: MoveNext, RecordCount e Provider

Olá pessoal,

Gostaria de agradecer aos que responderam a minha dúvida e dizer que
achei uma solução para o meu problema.

Eu queria usar o MoveLast para poder saber quantos registros havia num
SELECT. Isto porque usando DAO, o RecordCount não atualizava, então
tinha que dar um MoveLast e MoveFist para saber quantos registros tinha.
Agora que estou migrando para o PostgreSQL estou também convertendo o
sistema para a conexão com ADO e com ADO o RecordCount também não
atualiza quando se faz um Select. Uma das soluções é fazer um select com
count(*). Outra, que é a que vou usar é setar o CursorLocation do
RecordSet. Setando para adUseClient, ele atualiza o RecordCount e
permite fazer o MoveLast, mas como está atualizando o RecordCount, não
vou mais precisar usar o MoveLast, com isso posso abrir o select com
ForwardOnly que é mais rápido.

Segue um exemplo como dica para quem precisar da mesma funcionalidade
que eu:
Ps. não sei se dá para setar o CursorLocation na mesma linha do Open,
mas creio que não porque em todos os exemplos do MSDN ele sempre é
setado separado.

Set Rs1 = New ADODB.Recordset
Sql1 = "SELECT * FROM tbCidade WHERE cdCidade > 0 ORDER BY cdOrdem,
nmCidade"
Rs1.CursorLocation = adUseClient
Rs1.Open Sql1, db, adOpenForwardOnly, adLockReadOnly

Obrigado,

Nelson.


[As partes desta mensagem que não continham texto foram removidas]


----------------------------------------------------------
Grupo PostgreSQL Brasil. Fundado em 1999.
Mensagens para: postgresql-br-EYaqaC9dFX8MqA7zqLjoiV/I71DsQ//L@xxxxxxxxxxxxxxxx
Desassociação:
postgresql-br-unsubscribe-EYaqaC9dFX8MqA7zqLjoiV/I71DsQ//L@xxxxxxxxxxxxxxxx
Site Web: http://br.groups.yahoo.com/group/postgresql-br


Seu uso do Yahoo! Grupos é sujeito às regras descritas em:
http://br.yahoo.com/info/utos.html





<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise