Duvida com query.

Delphi

24/07/2008

Pessoal, preciso da ajuda de vocês.
Tenho duas tabelas igual:
- Tab1 (local)
- Tab1_remota (remota)

Preciso inserir o conteudo da Tab1 na Tab1_remota.
Como eu consigo realizar essa operação sem ter que discriminar todos os compos no comando SQL, visto que as duas tabelas são iguais.

O problema é que as duas tabelas se encontram em databases diferentes, portando preciso primeiro realizar a consulta na Tab1 para depois o resultado da consulta inserir na Tab1_remota.

Estou utilizando o componente Zeos.

Agradeço quem puder me ajudar.


Kuroski

Kuroski

Curtidas 0

Respostas

Fabriciocolombo

Fabriciocolombo

24/07/2008

olá,

faça um loop pelos campos

var
  int_loop: Integer;
begin
  //faz o loop pelos campos do DataSet1
  for int_Loop:=0 to DataSet1.FieldCount-1 do
  begin
    //Verifica se o campo do DataSet1 existe no DataSet2, só para garantir
    if Assigned(DataSet2.FindField(DataSet1.Fields[int_Loop].FieldName)) then   
    begin
      //Atribui o Campo do DAtaSet1 para o DAtaSe2 
      DataSet2.FieldByName(DataSet1.Fields[int_Loop].FieldName).Assign(DataSet1.Fields[int_loop]);
    end;      
  end;
end;


Até mais


GOSTEI 0
Brunodsr

Brunodsr

24/07/2008

qual o banco q vc ta usando??

Sugiro que vc utilize tecnicas de espelhamento de banco de dados ao inves de ficar escrevendo em dois bancos ao mesmo tempo. Va por mim.. :)

A versao 2.0 do firebird ja suporta jobs. Se for outro banco, fuça o manual.

Um abraco


GOSTEI 0
Kuroski

Kuroski

24/07/2008

Boa tarde pessoal.
O banco é MySQL.
Vou verificar esta alternativa.

Obrigado pela ajuda.


GOSTEI 0
Thomaz_prg

Thomaz_prg

24/07/2008

O MySql tem recursos de replicação e inserção entre bancos de dados. Poderia usar uma trigger (a partir do MySql 5) para inserir de um banco diretamente em outro.


GOSTEI 0
Mazzi

Mazzi

24/07/2008

THOMAZ

Sobre replicacao e (ou) espelhamentos, vc poderia passar algum link?

Pois estou com um problema semelhante , onde preciso copiar dados de Dbs Distintos 1 - Postgree e outro MySQL.

Obrigado


GOSTEI 0
Thomaz_prg

Thomaz_prg

24/07/2008

Replicação no Postgree com Slony-I:
http://postgresql.ribafs.net/slonywl (usei este material como base para testes).
http://www.upf.br/erbd/download/16138.pdf


Replicação no MySql:
http://dev.mysql.com/doc/refman/4.1/pt/replication.html
http://www.vivaolinux.com.br/artigo/Replicacao_em_banco_de_dados_MySQL/
http://www.vivaolinux.com.br/dica/Recriar_replicacao_no_MySQL_de_maneira_facil/


GOSTEI 0
POSTAR