se vc tem grids mostrando os registros deixa mais lento.. acredito q o ProcessMessages informa ao processador a fazer outras tarefas q estao na fila ou processar algo do seu sistema.. acho q isso faz perder tempo tbm.. por n usa um ProgressBar1.refresh?
2009/6/25 Fernando Pires de Souza Filho <nando_ace...@hotmail.com> > > > > Opa, > > Sou iniciante em delphi, to com o seguinte problema: > > Tenho que importar dados de uma tabela para a outra, seus campos sao > iguais. > uso a seguinte logica: > > tenho duas querys no form, uma qry_fonte(de onde vou pegar os dados da > tabela que quero importar), e colocar na outra tabela que criei, na > qry_Destino. > > de primeiro, faco um select * pra pegar tds os campos da tabela fonte, e > depois, faco um insert campo a campo na tabela de destino, ex: > > ---------------------------------------------------------- > QRY_Fonte.sql.Clear; > QRY_Fonte.SQL.Add('Select * From [TabelaFonte]'); > QRY_Fonte.Open; > while Not QRY_Fonte.Eof do > begin > with QRY_Destino do > begin > > sql.Clear; > Sql.Add('Insert Into [TabelaDestino] ('); > SQL.Add('campo1, campo2, campo3'); > SQL.Add(') Values ('); > SQL.Add(QuotedStr(QRY_Fonte.FieldByName('Campo1').AsString)+','); > SQL.Add(QuotedStr(QRY_Fonte.FieldByName('Campo2').AsString)+','); > SQL.Add(QuotedStr(QRY_Fonte.FieldByName('Campo3).AsString)+','); etc... > ExecSql; > ProgressBar1.Position := ProgressBar1.Position + 1; > Application.ProcessMessages; > QRY_Fonte.Next; > > end; > end; > qry_Fonte.close; > > ------------------------------------------------ > > Funciona, mais ta MUIITOO lento!!! > pra importar 150 reg de uma tabela pra outra demora um pouco mais de 1 > Minuto. > e tenho tabelas aqui com mais de 8.000. > > oq pode ta errado, e se alguem conhece uma forma melhor e mais rapida de > manipular esses dados? > > Atenciosamente > Fernando Pires > > __________________________________________________________ > Conheça os novos produtos Windows Live! Clique aqui. > http://www.windowslive.com.br > > [As partes desta mensagem que não continham texto foram removidas] > > > -- Leandro, MuTukA [As partes desta mensagem que não continham texto foram removidas]