[delphi-br] APPEND DEMORADO ??

2006-07-26 Por tôpico Wroger
Fiz alguns testes de performance, o melhor deles, ficou fazendo Insert em
vez de Append,
Mas mesmo assim,
Na Primeira vez que Clico no Botão que faz este loop, vai beleza (Apenas 1
Segundo) mas

Na Segunda Vez ele Sofre um pouco mais. (15 segundos) imagina o tempo
prá 100.000 registros !!!

Pergunta:
O que será que falta fazer para liberar memória, cache, ou outro raio que
seja nesta rotina ???
Rs...

[ ]'s

- Original Message - 
From: Daniel Bastos
To: delphi-br@yahoogrupos.com.br
Sent: Monday, July 24, 2006 4:18 PM
Subject: Re: [delphi-br] APPEND DEMORADO ??


Tu tabela deve ter muitos registros... o que acontece é que quando vc dá o
append, ele carrega tudo na memória...

vc vai sentir uma grande diferença se vc utilizar o Insert ao inves do
append.


Em 21/07/06, Rubem Nascimento da Rocha [EMAIL PROTECTED] escreveu:


 Muito simples! Vc coloca o Post() no final do laço, quando o correto é
 fazê-lo após preencher o último campo do laço! Sds.

 From: Wroger [EMAIL PROTECTED]
 Reply-To: delphi-br@yahoogrupos.com.br

 To: delphi-br@yahoogrupos.com.br
 Subject: [delphi-br] APPEND DEMORADO ??
 Date: Fri, 21 Jul 2006 13:39:32 -0300

 
 Fiz um exemplo, para acessar uma tabela do Tipo .DBF na minha unidade C:\
 utilizando um TTable.
 Estou utilizando o Seguinte Looping para dar append neste TTable:
 
 Table1.DisableControls;
 Table1.Close;
 Table1.Open;
 For i:=1 to 3000 do
 Begin
Table1.Edit;
Table1.Append;
Table1.FieldByName('v1').AsFloat := i
Table1.FieldByName('v2').AsFloat := (i * 5);
 End;
 tblCurva.Post;
 Table1.EnableControls;
 
 Na Primeira vez que rodo vai rapidinho, mas na segunda vez, percebo que o
 comando Append começa a demorar bem mais que o normal.
 O que pode estar havendo ??? Alguma dica ??
 
 Obrigado à todos.
 
 Roger.
 
 
 
 ___
 Yahoo! Acesso Grátis - Internet rápida e grátis. Instale
 o discador agora!
 http://br.acesso.yahoo.com

 _
 MSN Messenger: converse com os seus amigos online.
 http://messenger.msn.com.br






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





___ 
Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. 
Registre seu aparelho agora! 
http://br.mobile.yahoo.com/mailalertas/ 
 



-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
[EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





Re: [delphi-br] APPEND DEMORADO ??

2006-07-26 Por tôpico Eduardo Paci Galvão
Olá,

Fiz alguns testes de performance, o melhor deles, ficou fazendo Insert em
vez de Append,
O que será que falta fazer para liberar memória, cache, ou outro raio que
seja nesta rotina ???

Peguei o bonde andando, mas não sei porque você está utilizando o append ou 
insert.

Dê um INSERT no banco através de uma cláusula SQL, vai ser 
incomparávelmente mais rápido.

Atenciosamente,
Eduardo Paci Galvão
Engenheiro Eletricista UFMG
www.egalvao.com.br

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



-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
[EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




[delphi-br] APPEND DEMORADO ??

2006-07-21 Por tôpico Wroger
Fiz um exemplo, para acessar uma tabela do Tipo .DBF na minha unidade C:\
utilizando um TTable.
Estou utilizando o Seguinte Looping para dar append neste TTable:

Table1.DisableControls;
Table1.Close;
Table1.Open;
   For i:=1 to 3000 do
   Begin
  Table1.Edit;
  Table1.Append;
  Table1.FieldByName('v1').AsFloat := i
  Table1.FieldByName('v2').AsFloat := (i * 5);
   End;
tblCurva.Post;
Table1.EnableControls;

Na Primeira vez que rodo vai rapidinho, mas na segunda vez, percebo que o
comando Append começa a demorar bem mais que o normal.
O que pode estar havendo ??? Alguma dica ??

Obrigado à todos.

Roger.



___ 
Yahoo! Acesso Grátis - Internet rápida e grátis. Instale 
o discador agora! 
http://br.acesso.yahoo.com


-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
[EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





Re: [delphi-br] APPEND DEMORADO ??

2006-07-21 Por tôpico Andre Mesquita
Apague todos os registros antes de rodar novamente.

Se ainda sim ficar lento, experimente criar um índice... ou até mesmo retirar 
os índices.

Não entendi o trecho:

  Table1.Edit;
  Table1.Append;

Vc quer inserir ou editar?

Resolvendo essas questões, altera um pouquinho, fazendo o POST de 100 em 100 
inclusões.

[ ]'s
  - Original Message - 
  From: Wroger 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Friday, July 21, 2006 1:39 PM
  Subject: [delphi-br] APPEND DEMORADO ??


  Fiz um exemplo, para acessar uma tabela do Tipo .DBF na minha unidade C:\
  utilizando um TTable.
  Estou utilizando o Seguinte Looping para dar append neste TTable:

  Table1.DisableControls;
  Table1.Close;
  Table1.Open;
 For i:=1 to 3000 do
 Begin
Table1.Edit;
Table1.Append;
Table1.FieldByName('v1').AsFloat := i
Table1.FieldByName('v2').AsFloat := (i * 5);
 End;
  tblCurva.Post;
  Table1.EnableControls;

  Na Primeira vez que rodo vai rapidinho, mas na segunda vez, percebo que o
  comando Append começa a demorar bem mais que o normal.
  O que pode estar havendo ??? Alguma dica ??

  Obrigado à todos.

  Roger.


  
  ___ 
  Yahoo! Acesso Grátis - Internet rápida e grátis. Instale 
  o discador agora! 
  http://br.acesso.yahoo.com 
   

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



-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
[EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [delphi-br] APPEND DEMORADO ??

2006-07-21 Por tôpico Luciano
Wroger,

Se a tua rotina está igual a que vc mandou, então modifique para:

whith Table1 do
  begin
 DisableControls;
 Close;
 Open;
 For i:=1 to 3000 do
   Begin
  Append;
  FieldByName('v1').AsFloat := i;
  FieldByName('v2').AsFloat := (i * 5);
  Post;
  End;
EnableControls;
  end;

Acho que desta forma resolve.

Luciano
  - Original Message - 
  From: Wroger 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Friday, July 21, 2006 1:39 PM
  Subject: [delphi-br] APPEND DEMORADO ??


  Fiz um exemplo, para acessar uma tabela do Tipo .DBF na minha unidade C:\
  utilizando um TTable.
  Estou utilizando o Seguinte Looping para dar append neste TTable:

  Table1.DisableControls;
  Table1.Close;
  Table1.Open;
 For i:=1 to 3000 do
 Begin
Table1.Edit;
Table1.Append;
Table1.FieldByName('v1').AsFloat := i
Table1.FieldByName('v2').AsFloat := (i * 5);
 End;
  tblCurva.Post;
  Table1.EnableControls;

  Na Primeira vez que rodo vai rapidinho, mas na segunda vez, percebo que o
  comando Append começa a demorar bem mais que o normal.
  O que pode estar havendo ??? Alguma dica ??

  Obrigado à todos.

  Roger.


  
  ___ 
  Yahoo! Acesso Grátis - Internet rápida e grátis. Instale 
  o discador agora! 
  http://br.acesso.yahoo.com 
   

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



-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
[EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




RE: [delphi-br] APPEND DEMORADO ??

2006-07-21 Por tôpico Rubem Nascimento da Rocha

Muito simples! Vc coloca o Post() no final do laço, quando o correto é 
fazê-lo após preencher o último campo do laço! Sds.

From: Wroger [EMAIL PROTECTED]
Reply-To: delphi-br@yahoogrupos.com.br
To: delphi-br@yahoogrupos.com.br
Subject: [delphi-br] APPEND DEMORADO ??
Date: Fri, 21 Jul 2006 13:39:32 -0300

Fiz um exemplo, para acessar uma tabela do Tipo .DBF na minha unidade C:\
utilizando um TTable.
Estou utilizando o Seguinte Looping para dar append neste TTable:

Table1.DisableControls;
Table1.Close;
Table1.Open;
For i:=1 to 3000 do
Begin
   Table1.Edit;
   Table1.Append;
   Table1.FieldByName('v1').AsFloat := i
   Table1.FieldByName('v2').AsFloat := (i * 5);
End;
tblCurva.Post;
Table1.EnableControls;

Na Primeira vez que rodo vai rapidinho, mas na segunda vez, percebo que o
comando Append começa a demorar bem mais que o normal.
O que pode estar havendo ??? Alguma dica ??

Obrigado à todos.

Roger.



___
Yahoo! Acesso Grátis - Internet rápida e grátis. Instale
o discador agora!
http://br.acesso.yahoo.com

_
MSN Messenger: converse com os seus amigos online. 
http://messenger.msn.com.br



-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
[EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html