Egentligen är detta ett fall för Lookup. Det verkar som om du vill göra en sökning efter namn och retur-id. Ganska enkelt. Så här skapade jag ett exempel på detta:
- Dra en dataflödesuppgift till designytan. Dubbelklicka på den för att växla till den.
- Skapa en anslutningshanterare för min databas
- Dra till designytan:
- en OLE DB-källa
- En uppslagstransform
- En OLE DB-destination
- Anslut källan till sökningen till destinationen. Det är "Lookup Match Output" vi vill ska gå till destinationen. Se figur 1.
- Konfigurera källan. Min källtabell hade bara id- och namnkolumner.
- Konfigurera uppslagningen
- fliken Allmänt:Använd en OLE DB-anslutning
- Fliken Anslutning:ange samma anslutning, men använd uppslagstabellen. Min uppslagstabell var bara id och namn, men namnet gjordes unikt, så det är bättre att använda som en uppslagskolumn.
- På fliken kolumner konfigurerar du namn för att mappa till namn, med "id" som utdata. Konfigurera uppslagsoperationen att vara "lägg till ny kolumn" och namnge den kolumnen "lookupId". Se figur 2.
- Ignorera de andra två flikarna
- Konfigurera utdata för att ta alla tre kolumner. Se figur 3.
Det är allt. För varje rad från källan kommer namnkolumnen att användas för att matcha namnkolumnen i uppslagstabellen. Varje matchning kommer att bidra med sin id-kolumn som den nya lookupId-kolumnen. Alla tre kolumnerna fortsätter till destinationen.
Bild 1:
Bild 2:
Bild 3:
>