Ich habe mehrere .csv-Dateien in einem Verzeichnis.ForEach Loop Container connundrum
Ich habe einen ForEach-Loop-Container erstellt, der jede Datei im Verzeichnis durchläuft.
Das Problem ist, ich einen Einsatz csv in die Datenbank haben und die Zieldatenbanktabelle wird von einem SSIS var tblname definiert, die bis in die foreach Behälter beginnt null ist und füllt die var Current mit einem Dateipfad String. Das Problem tritt auf, weil diese Variable nicht deklariert ist, so dass die OLDBC-Verbindung nicht funktioniert, da sie nach einer Tabelle mit einem Nulltitel sucht. Gibt es eine Möglichkeit, den Start der einzelnen Schleifen zu erzwingen, bevor die Verbindung zur Datenbank hergestellt wird?
Sind die Inhalte der einzelnen CSV-Datei in der gleichen Datenbanktabelle zu importieren, oder versuchen Sie, jede CSV-Datei in mehrere Datenbanktabellen importieren mit denen jeder ein ähnlicher Name wie der der Quell-CSV-Datei? – user3662215
Sie können auch versuchen, den Verbindungszeichenfolgenwert des OLE DB-Verbindungs-Managers bei jedem Durchlauf der Schleife dynamisch zu ändern. Definieren Sie zuerst einen tatsächlichen Wert für die Variable tblName, die nicht NULL ist. Dann wenden Sie das in einem Ausdruck des ConnectionSring unter Ihrem Verbindungs-Manager an. Im Ausdruck würden Sie den Katalogwert durch die Variable tblName ersetzen. Auf diese Weise ändert sich der Name der Katalogtabelle des Verbindungs-Managers dynamisch, da sich der Wert für TblName mit jedem Durchlauf der Schleife ändert. – user3662215