2016-07-29 6 views
0

Ich habe eine Flat-Datei, die ich in eine SQL Server-Tabelle mit SSIS importieren. Ich würde gerne wissen, ob wir das Datum aus dem Dateinamen extrahieren und es zu einer Spalte in SQL Server aus dem SRC SSIS-Paket hinzufügen können?SSIS - Hinzufügen von Datum aus dem Dateinamen in der Datumsspalte

Ich weiß, kann dies über abgeleitete Spalten tun, aber würde wirklich gerne wissen, wie mache ich das tun?

+0

Wenn Sie über abgeleitete Spalte wissen, was Sie sonst noch wissen müssen? – FLICKER

+0

Ich habe eine abgeleitete Spalte erstellt, aber was füge ich in Ausdrücke hinzu? und wie sage ich SSIS, um das Datum aus dem Dateinamen zu extrahieren und es der SQL-Tabelle hinzuzufügen? –

Antwort

3

Offensichtlich kennen Sie den Dateinamen, also müssen Sie eine Variable definieren (nennen Sie es DtFromName) und extrahieren Sie DATE aus dem Dateinamen und setzen Sie es die Variable (Sie können Script Task dazu verwenden).

Dann können Sie diese Variable in Ihrer abgeleiteten Spalte verwenden. Siehe folgende Bilder, Hoffe du kannst die Lösung bekommen.

Ihr Paket sieht so aus. Beachten Sie die Variablen auf der linken Seite

Variables and Package Items

Doppelklicken Sie nun auf Skripttask und weisen Sie die Variablen zu Readonly und Readwrite

Variable and your Data Flow

Klicken Sie nun auf „Script bearbeiten“ -Button Öffnen von VS IDE und Schreiben von Code zum Extrahieren des Datums aus der Variablen FileName und Speichern in der Variablen DtFromName.

So etwas wie diese

enter image description here

Datenfluss-Steuerung, werden Sie etwas wie diese:

enter image description here

nun einen Doppelklick auf abgeleitete Spalten und in Ausdruck der abgeleiteten Spalte verwenden Sie diese Variable und die abgeleitete Spalte

enter image description here


Jetzt haben Sie die Datumszeichenfolge in abgeleitete Spalten. Sie sollten den Rest übernehmen können.

+0

Was für eine Skriptaufgabe ist das? Ich bin mir nicht sicher, wie man das Datum extrahiert –

+0

Wissen Sie, wie Script Task zu verwenden? – FLICKER

+0

Ich musste es googeln, also keine –