Consulta sql demorada

PostgreSQL

24/04/2014

Boa tarde, eu tenho uma tabela com 100.00 registros e quando eu abro ela pelo delphi 7 usando um grid, a consulta é muito demorada.

Uso componente zeos e postgre.
Fernando Sousa

Fernando Sousa

Curtidas 0

Melhor post

Bruno Leandro

Bruno Leandro

25/04/2014

Fernando o que pode ser feito é não trazer nenhum registro.

a demora é porque o banco tem que retornar todos os registros e esses registro tem que trafegar na rede as vezes e é um volume grande de registros.

se você Não quiser mudar a lógica você tem teria que melhorar a parte de hardware (nao recomendo)

a minha sugestão é: abrir a tela sem retornar nenhum registro, e quando o usuário clicar em pesquisar retornar os registros necessarios.
GOSTEI 1

Mais Respostas

Bruno Leandro

Bruno Leandro

24/04/2014

Ola Fernando você retorna todos os registros quando a tela é aberta ?

qual o select que você esta executando?
GOSTEI 0
Jair N.

Jair N.

24/04/2014

Você tem que fazer teste para melhorar sua conexão, veja um limitador de registros a exemplo o "LIMIT" do PostgreSQL para ver quantos registros você consegue abrir em sua grade em determinado tempo..., Uma solução agora não será definitiva e nem sempre pode contar com o mesmo cenário.
GOSTEI 0
Fernando Sousa

Fernando Sousa

24/04/2014

Opa Bruno, sim. Eu carrego ela quando chamo a tela.

Eu uso um select normal.

with dm.ztabela do
begin
close;
sql.clear;
sql.add(select * from tabela);
open;
end;

Ai depois disto, mostro ela em um grid.
GOSTEI 0
Alan Mario

Alan Mario

24/04/2014

trazer todos os dados da tabela é complicado, sempre será lento.
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

24/04/2014

Dica:

Use o comando EXPLAIN ANALYZE para estudar as falhas da sua query. Segue a sintaxe:

EXPLAIN ANALYZE select * from minhatabela;
 
GOSTEI 0
Fernando Sousa

Fernando Sousa

24/04/2014

Limitei os campos a serem utilizados no grid e funciona perfeitamente.

RESOLVIDO.
GOSTEI 0
POSTAR