Na verdade, este é um caso para Lookup. Parece que você quer fazer uma pesquisa por nome e id de retorno. Bem simples. Veja como eu criei um exemplo disso:
- Arraste uma tarefa de fluxo de dados para a superfície de design. Clique duas vezes nele para alternar para ele.
- Criar um gerenciador de conexões para meu banco de dados
- Arraste para a superfície de design:
- uma fonte OLE DB
- Uma transformação de pesquisa
- Um destino OLE DB
- Conecte a Origem à Pesquisa ao Destino. É a "Saída de correspondência de pesquisa" que queremos que vá para o destino. Veja a figura 1.
- Configure a fonte. Minha tabela de origem tinha apenas as colunas id e name.
- Configurar a pesquisa
- Guia Geral:use uma conexão OLE DB
- Guia Conexão:especifique a mesma conexão, mas use a tabela de pesquisa. Minha tabela de pesquisa era apenas id e nome, mas o nome se tornou único, então faz mais sentido como uma coluna de pesquisa.
- Na guia de colunas, configure name para mapear para name, com "id" como saída. Configure a operação de pesquisa como "adicionar nova coluna" e nomeie essa coluna como "lookupId". Veja a figura 2.
- Ignore as outras duas guias
- Configure a saída para receber todas as três colunas. Veja a figura 3.
Isso é tudo. Para cada linha da origem, a coluna de nome será usada para corresponder à coluna de nome da tabela de pesquisa. Cada correspondência contribuirá com sua coluna id como a nova coluna lookupId. Todas as três colunas prosseguirão para o destino.
Figura 1:
Figura 2:
Figura 3: