Em 13/11/12, Osvaldo Kussama<[email protected]> escreveu: > Em 12/11/12, Mariana Hansen<[email protected]> escreveu: >> Boa noite a todos. >> >> Recentemente mexendo com o mysql me pediram para que eu importasse os >> dados >> de um arquivo CSV para uma tabela: >> >> CSV -> tabela >> >> Sendo que se o id da chave já existir, se ouver mudanças no resto fazer o >> update. >> Se tiver registros a mais; inserir. >> >> Pois bem... >> >> Resolvi o caso usando no mysql >> >> LOAD DATA ... REPLACE; >> >> No mysql, esse "REPLACE" foi minha palavra salvadora... >> Gostaria de saber como no nosso glorioso Postgres podemos fazer o mesmo >> elegantemente. >> Já consultei a documentação sobre o comando COPY e infelizmente não tem. >> > > > Está na TODO List: > > Add SQL-standard MERGE/REPLACE/UPSERT command > > MERGE is typically used to merge two tables. REPLACE or UPSERT > command does UPDATE, or on failure, INSERT. See SQL MERGE for notes on > the implementation details. > > http://wiki.postgresql.org/wiki/Todo > > Como uma possível alternativa, dentre outras, veja o exemplo 39-2 em: > http://www.postgresql.org/docs/current/interactive/plpgsql-control-structures.html > > Osvaldo >
Complementando para o seu caso específico: Por que não um TRUNCATE seguido de um COPY? Osvaldo _______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
