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

 




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