Eu criei um SSIS Pacakge que importa um arquivo de declarações de extração mensal. Eu tenho uma tarefa simples de fluxo de dados, arquivo simples para destino OLEDB com um componente de coluna derivado usado para gerar uma chave primária (com base em uma combinação de 3 colunas no arquivo de extração).
O que eu gostaria de fazer, se possível, é que o pacote SSIS importe apenas novos registros com base na chave primária para que, se houver um arquivo importado que contenha uma chave primária (gerada) que já exista na tabela de destino, então gostaria que o pacote excluísse o registro existente na tabela e depois adicionasse o novo registro do arquivo atual que está sendo importado.
Eu sei que poderia fazer isso tendo uma tabela de teste onde carrego o arquivo e, em seguida, usando algumas consultas sql (sp) para excluir e adicionar registros à tabela apropriadamente, mas estou tentando realizar a importação sem precisar criar uma tabela de teste porque a tabela que estou preenchendo no momento, já é uma tabela de preparação...
O que estou tentando realizar é possível usando o SSIS e apenas 1 tabela de destino ou precisarei criar uma tabela de preparação adicional?
Como Kin mencionou em seu comentário acima, é possível realizar o que eu estava tentando fazer usando o componente de transformação SSIS Lookup (exemplo também fornecido em seu comentário) que responde à minha pergunta.
Embora eu certamente usarei esse componente no futuro, decidi usar um método de script SQL mais direto para realizar o que precisava depois de ler o comentário de mskinner (e o blog referenciado), que aponta que usar uma tarefa Executar SQL provavelmente será muito mais rápido/eficiente do que usar o componente Lookup Transformation no SSIS para o que estou tentando realizar.