Estou fazendo este post para ajudar um amigo do forum microsoft TechNet Bruno.Costa, a duvida referente é sobre como transferir dados diariamente pelo Integration Service (SSIS), sem dar erro de Primary Key, ou seja, não transferindo todos os dados.
Configurando o pacote
1 – Conexão com a base de dados (No caso estou utilizando apenas uma)
3 – Visão Macro de dentro do Data Flow
Lembrando que aqui as configuraçõs estarão no Look Up, portnto o objecto Source E Destination, não possuem nenhuma configuração a não ser apontamento de tabelas.
4 – Loop Up
Quando voce apontar de uma task de data source para um Look up, pense que voce ja tem em mãos a tabela source, portanto, na primeira tela do Look Up voce deve apontar para a tabela destino, no caso do meu exemplo, ficaria como a imagem abaixo:
Em Coluns, voce deve apenas linkar as Primary Key de cada tabela, conforme abaixo:
Agora, o look up serve como um join, portanto, ele ira verificar se o ID da tabela Source ja existe na tabela Destiny, portanto, se voce utilizar a seta verde na saida do look up para o destination, voce ira apenas tentar inserir dados que ja existem, e ira surgir um erro de violação de primary key, portanto, voce deve configurar a saida de erro para redirecionar as linhas, na aba Columns ainda no Look Up, clique no botão na parte de baixo da task chamado “Configure error Output…” e configure conforme figura abaixo:
E lembre-se de utilizar a seta vermelha para o destination conforme imagem geral dentro do Data Flow.
Trackbacks
[…] mas sim, atualizar os outros campos caso tenha ocorrido alguma alguma alteração. Por exemplo, neste post eu explico sobre apenas evitar erro de PK, portanto, imaginem o seguinte […]