2016-08-08 77 views
0

Ich lade eine tägliche CSV-Datei über ein SSIS-Paket in eine SQL Server-Tabelle und jedes Mal möchte eine Datumsspalte einfügen, die angibt, wann der Upload abgeschlossen war. Ich denke darüber nach, eine SQL-Task ausführen nach der Datenflusstask, die eine ALTER TABLE Abfrage mit einem GETDATE() verwendet.SSIS - Upload-Datum Spalte nach SSIS-Upload hinzufügen

Jedes Mal, wenn ich das SSIS-Paket vor dem Hochladen der CSV-Daten lade, werden die vorherigen Daten in eine Archivtabelle verschoben, sodass Sie sich nicht jedes Mal, wenn ich eine Spalte einfüge, überschreiben lassen müssen.

+0

Erstellen Sie eine nicht-nullbare Datetime-Spalte mit dem Standardwert 'GETDATE()', die automatisch ausgefüllt wird. Sie wollen definitiv keinen 'ALTER TABLE' verwenden - es ist unnötig. –

+0

Erstellst du die Zieltabelle jedes Mal vollständig neu? Andernfalls sollten Sie es nur einmal ändern müssen, um die Datumsspalte hinzuzufügen, nicht jedes Mal, richtig? –

Antwort

0

Danke für die Kommentare.

Was ich getan habe in einer SQL ausführen Aufgabe gestellt wird, und verwendet den Code

UPDATE [dbo].[CM25_Current] SET [Upload Date] = (GETDATE()); 
+0

Haben Sie meinen Vorschlag in den Kommentaren versucht? Wenn Sie ein Defatul verwenden, wird das Feld automatisch ausgefüllt und es ist kein UPDATE erforderlich. Ich empfehle dringend, dies auf alle Import- und Staging-Tabellen anzuwenden. –

0

hinzufügen DATETIME- Spalte mit Constraint Standard festgelegt als GETDATE() wird Ihre Anforderung helfen.