2
respostas

Script UPDATE or INSERT

Olá. Sou iniciante em SQL Server e já trabalhei um pouco com o Firebird, usava o Ibexpert para manipular o BD. Nesta ferramenta podia gerar um script de UPDATE OR INSERT para cada registro de uma tabela com o objetivo, por exemplo, de deixar uma tabela da base homologação igual a base de produção, seja inserindo novos registros ou atualizando os existentes. Segue documentação do Firebird a respeito deste assunto: https://firebirdsql.org/refdocs/langrefupd25-update-or-insert.html

Gostaria de saber se existe algo semelhante no SQL Server ou se existe algum recurso equivalente.

2 respostas

Olá Bruno!

Encontrei alguns métodos para fazer isso. Um deles é o MERGE, que é uma ferramenta implementada a partir da versão 2008 do SQL Server.

A documentação é gigantesca sobre o uso, mas nesse link começam os exemplos.

Outro lugar que também encontrei uma outra solução para esse problema, foi num tópico do StackExchenge que resolve o problema com IF EXISTS .. ELSE e também mostra uma forma simplificada do uso do MERGE.

Espero ter ajudado!

Ok. Obrigado. Mas o problema é que dessa forma eu vou ter que gerar o script manualmente. No IBexpert isso é gerado automaticamente.

O que você sugere como alternativa? Tem alguma forma no SQL Server de fazer um backup dos registros que vou dar um Update?

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software