Fórum Como fazer um Select não trazer todos os registros? #260621
30/11/2004
0
Olá amigos, no meu componente sqldataset coloco no comandtext:
Select * from produtos
Nesse caso trará todos os registros da tabela, o que causa lentidão na abertura do form, como posso limitar esse carregamento, tipo trazer apenas 10 registros.
Utilizo delphi 7 e firebird 1.5
Atenciosamente
Mario
Select * from produtos
Nesse caso trará todos os registros da tabela, o que causa lentidão na abertura do form, como posso limitar esse carregamento, tipo trazer apenas 10 registros.
Utilizo delphi 7 e firebird 1.5
Atenciosamente
Mario
Aldus
Curtir tópico
+ 0
Responder
Posts
30/11/2004
Vinicius2k
Mario,
Limite ao máximo a quantidade de registros retornados através da condição WHERE dentro da instrução SQL, os registros que não satisfizerem ao WHERE nunca virão para o lado no cliente.
Se mesmo com where a query retornar muitos registros, ou vc não puder usar o where em alguma ocasião vc deve procurar utilizar fetch por demanda, onde são transportados os pacotes de registros à medida que são necessários...
Vc utiliza TClientDataSet ? Se sim, ajuste a propriedade PacketRecords para o número de registros que serão trazidos por vez, por exemplo, 32, e vc deve notar uma grande diferença...
Utilize também índices corretos no SGBD e condizentes com a cláusula ORDER BY da query...
T+
Limite ao máximo a quantidade de registros retornados através da condição WHERE dentro da instrução SQL, os registros que não satisfizerem ao WHERE nunca virão para o lado no cliente.
Se mesmo com where a query retornar muitos registros, ou vc não puder usar o where em alguma ocasião vc deve procurar utilizar fetch por demanda, onde são transportados os pacotes de registros à medida que são necessários...
Vc utiliza TClientDataSet ? Se sim, ajuste a propriedade PacketRecords para o número de registros que serão trazidos por vez, por exemplo, 32, e vc deve notar uma grande diferença...
Utilize também índices corretos no SGBD e condizentes com a cláusula ORDER BY da query...
T+
Responder
Gostei + 0
30/11/2004
Aldus
Olá Vinicius, uso CDS sim e ajustei o tamanho do pacote e funcionou a jato.
Obrigado mesmo.
Um grande abraço
Mario
Obrigado mesmo.
Um grande abraço
Mario
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)