[firebase-br] Atualizar Tabela

Jeferson Oliveira jefersonfoliveira em gmail.com
Qua Jan 24 00:39:01 -03 2007


Sugestão:

1) Crie no seu banco de destino uma tabela de uso temporário;
2) Insira todos os registros nela;
3) Atualize os registros já existentes na tabela oficial, algo assim:

update TabelaOficial A
set Campo1 = (select Campo1
              from TabelaTemporaria B
              where A.CampoChave = B.CampoChave),
    Campo2 = (select Campo2
              from TabelaTemporaria B
              where A.CampoChave = B.CampoChave)
    ...
where exists (select 1
              from TabelaOficial C
              where A.CampoChave = C.CampoChave);

4) Insira na tabela oficial os registros ainda não existentes:

insert into TabelaOficial
select *
from TabelaTemporaria A
where not exists(select 1
                 from TabelaOficial B
                 where A.CampoChave = B.CampoChave)

5) Esvazie, ou mesmo exclua, a "tabela temporária" para não deixar no
banco registros inúteis.


Abraço!
Jeferson Oliveira




Mais detalhes sobre a lista de discussão lista