Fórum Performance na Consulta #209898
27/01/2004
0
Estou com um problema, acho que vcs podem me ajudar.
Como posso aumentar a performance quando ativo uma query.
No evento onCreate de um formulário de Notas Fiscais de Saida, eu ativo minha query.
QNFSaida.Open;
Este procedimento têm demorado muito. O SQL é simplesmente ´SELECT * FROM nfsaida´ , e não tenho campos calculados nem campos lookup.
O que posso fazer para ter mais performance neste processo?
Obrigado!
Galodoido
Curtir tópico
+ 0Posts
27/01/2004
Maicongabriel
você realmente preciza de todos os campos (*) da tabela ´nfsaida´ ?
você preciza de todos os registro da tabela ´nfsaida´ independente do cliente ou algo assim ?
Etc, etc...
Não sei se você me entendeu, mas analize os dados mínimos os quais você necessita que sejam tragos à tela, traga apenas os campos realmente necessários neste momento e especifique algum critério ´Where´, para cliente ou algo assim ...
Ex: ´SELECT NFS.NumeroNota, NFS.Cliente FROM nfsaida NFS WHERE NFS.Cliente = 10´
{ é apenas um exemplo bobo }Gostei + 0
27/01/2004
Aroldo Zanela
Se estiver utilizando um SGBDR, evite utilizar select sem restrições (Where), pois você deve trazer para a estação somente os dados necessários.
No caso de estar utilizando Banco de dados desktop (Paradox, xBase) é melhor utilizar TTable, pois neste caso, apresentam maior performance.
Gostei + 0
30/01/2004
Galodoido
Quanto a causa Where, já incluí e continua lento!
De qualquer forma, obrigado pelas dicas. Caso saibam de mais alguma coisa ficarei agradecido.
Gostei + 0
30/01/2004
Maicongabriel
Não somente para ordenação, mas indices são muito importantes para uma boa performance na Select!
Coloque a sua consulta aqui, para que possamos vê-la!
Gostei + 0
30/01/2004
Ldsirene
qryexemplo.Prepare;
qryexemplo.Open;
qryexemplo seria o nome do seu componente. Use o prepare antes de open que ajuda na performance, pode consultar a ajuda do Delphi sobre isso!
Espero ter ajudado.
Gostei + 0
03/02/2004
Galodoido
A instrução é simples : SELECT * FROM nfsaida
OU SELECT * FROM nfsaida WHERE nfsaida = 2569
Ok?
Valeu galera!
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)