Jeg har sammensat et eksempel på transformation(højreklik og vælg gem link) baseret på det du har givet. Det eneste trin, jeg føler mig lidt usikker på, er de sidste tabelinput. Jeg skriver dybest set sammenføjningsdataene til tabellen og lader dem mislykkes, hvis der allerede eksisterer en specifik relation.
bemærk:
Denne løsning opfylder ikke rigtigt "Alle tilgange bør inkludere nogle fra validering og en rollback-strategi, hvis en indsættelse mislykkes eller ikke opretholder referentiel integritet." kriterier, selvom det nok ikke vil fejle. Hvis du virkelig ønsker at opsætte noget komplekst, kan vi det, men dette burde helt sikkert få dig i gang med disse transformationer.
Dataflow efter trin
1. Vi starter med at læse din fil ind. I mit tilfælde konverterede jeg det til CSV, men fanen er også fint.
2. Nu skal vi indsætte medarbejdernavnene i medarbejdertabellen ved hjælp af en combination lookup/update
.Efter indsættelsen tilføjer vi medarbejder_id'et til vores datastrøm som id
og fjern EmployeeName
fra datastrømmen.
3. Her bruger vi bare et Vælg værdier-trin til at omdøbe id
felt til medarbejder_id
4. Indsæt jobtitler ligesom vi gjorde medarbejdere, og tilføj titel-id'et til vores datastrøm og sletter også JobLevelHistory
fra datastrømmen.
5. Simpelt omdøb af titel-id'et til title_id (se trin 3)
6. Indsæt kontorer, få id'er, fjern OfficeHistory fra strømmen.
7. Simpelt omdøb af office-id'et til office_id (se trin 3)
8. Kopier data fra sidste trin til to strømme med værdierne employee_id,office_id
og employee_id,title_id
hhv.
9. Brug en tabelindsættelse til at indsætte joindataene. Jeg har valgt at ignorere indsættelsesfejl, da der kan være dubletter, og PK-begrænsningerne vil få nogle rækker til at mislykkes.
Outputtabeller