Steve Howe wrote:
>> Ainda assim o PostGreSql executaria primeiro o cursor para depois ir
>> enviando os registros, o que não resolveria para o que ele precisa.
> Sim, o PostgreSQL primeiro executaria o cursor, da mesma forma que o
> Firebird,
> Oracle ou qualquer outro. Assim que obtesse um produziria um resultado que
> satisfizesse o número de registros requisitado, ele seria enviado. É
> exatamente para isso que existem o DECLARE e o FETCH.
Pode fazer com cursor ou sem cursor isso não vai resolver o problema do
colega, espero que tenha acompanhado a thread, Firebird trabalha de
forma diferente, ele não envia todos os registros de uma vez, ele envia
sob demanda, os dados não vem todos para a máquina cliente, você não
precisa ficar fazendo fetch. Se acompanhou, vai ver que ele quer
selecionar todos os registros da tabela e ter o resultado instantaneo na
tela, o cursor não resolve este problema.
> Alguns drivers como o JDBC ou o pgExpress da Vita Voom implementam cursores
> DECLARE/FETCH automáticos há muitos anos e eles são utilizados exatamente com
> esse propósito, de tornar o retorno mais rápido e sem carregar todo o
> conjunto
> de registros na memória.
Eu já usei o seu driver para Delphi há muitos anos quando ainda morava
em Belo Horizonte com a versão 7.2.(alguma coisa_) do PostGreSql e ele
não fazia isto que o coleta está querendo, eu fui um dos que migrei do
firebird para o PostGreSql porque a base de dados estava ficando grande
d+ e também estava mal acostumado com este jeito de o Firebird trabalhar.
Utilizo hoje o JDBC e ele ainda não faz isto que o colega da lista está
querendo (espero que continue não fazendo, o protocolo de comunicação do
Firebird não é legal, isto é fato). O Firebird tem um jeito diferente de
retornar as consultas, algo parecido como o cursor no lado servidor
utilizando clServer do Delphi + Ado + Sql Server (acho que era isto,
alguém do Delphi me corrija se eu estiver errado, porque eu não programo
mais em Delphi desde que este escolheu o .Net).
--
Shander Lyrio
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral