2016-07-13 29 views
-1

Ich bin mit einem Szenario in SSIS fest. Ich habe zwei Tabellen, die beide die referentielle Integrität beibehalten, das heißt, eine ist Elterntabelle und eine andere ist Kind. Wenn ich einige Datensätze in der übergeordneten Tabelle einfüge, sollten diese neuen Datensätze in die untergeordnete Tabelle eingefügt werden.Wie fügen Sie die Datensätze in der untergeordneten Tabelle ein, wenn Datensätze in der SSIS-Tabelle "eltern" eingefügt werden?

Bitte teilen Sie, wenn Sie eine Idee haben, dies in SSIS zu implementieren.

+0

Sind die einzufügenden Datensätze identisch? d. h. Sie haben 5 Kinderaufzeichnungen. Fügen Sie 5 übergeordnete Datensätze ein und haben sie identische Felder? Müssen Sie einen Schlüssel beibehalten, der im untergeordneten Datensatz generiert wird? –

+0

Fügen Sie dem SSIS-Paket einige Schritte hinzu, um Daten in die untergeordnete Tabelle einzufügen, nachdem die Einfügungen in die übergeordnete Tabelle abgeschlossen sind. Es ist wirklich so einfach! –

+0

Können Sie genauer sein, was die Herausforderung ist, hier? Wenn Sie wissen, wie Sie Datensätze in die übergeordnete Tabelle einfügen, müssen Sie sicher wissen, wie Sie Datensätze in eine untergeordnete Tabelle einfügen. –

Antwort

0

Aus Ihrer Beschreibung gehe ich davon aus, dass Sie wissen, welche Kinderakten für welchen Stammsatz erstellt werden müssen, also gibt es im Grunde genommen zwei Möglichkeiten.

  1. Alle Daten werden zur Laufzeit bekannt:
    • einen Datenfluß erstellen, die der Haupttabelle
    • cretae einen zweiten Datenfluß auffüllt, die das Kind Tabelle auffüllt und es mit dem ersten Datenfluß verbinden Einschränkung über Succeed

Aber im Grunde klingt etwas zu einfach - erraten Sie schon versucht, diese schon aus? Also hier kommt Möglichkeit 2: Die übergeordnete Tabelle erstellt IDs, die von den untergeordneten Datensatz verwiesen werden müssen:

  • Wieder starten wir mit einem Datenfluß, um die Master-Tabelle zu füllen
  • dann wir einen zweiten Datenfluß hinzufügen - über success constraint
  • wird in diesem Datenfluss ein Lookup hinzugefügt, das die Master-Tabelle auf die entsprechenden IDs überprüft
  • Diese ID wird dann in die entsprechende Spalte in der untergeordneten Tabelle geschrieben.