Einfaches Verfahren: Sie können die Zeilen mit einer Abfrage vor dem Export zählen, mit SQL ausführen Task, wenn die Anzahl der Zeilen größer als 0 ist, dann mit dem Export fortfahren;
Das Folgende ist eine mögliche Lösung:
- eine Abfrage wie SELEC COUNT (*) verwenden AS Mycount FROM ...
- ein Paket Variable (myVariable mit Mycount zuzuordnen), enthält, um die Anzahl von Reihen
- Satz Ergebnis einreihig in SQL Task Editor
- die Variable in Registern Ergebnis Kartenset in SQL Editor für den Task (Mycount - myVariable) Set =
- Verwendung zwei Pfeile, die von SQL ausführen Aufgabe in jedem Pfeil wählen Auswerteoperation: Ausdruck, Ausdruck: myVari ab> 0 (erster Pfeil) und myVariable == 0 (zweiter Pfeil), wählen Sie Logisch ODER, auf diese Weise haben Sie eine Verzweigung!
- verbinden den Export in den Pfeil mit myVariable> 0
- den anderen Pfeil auf eine andere mögliche Aufgabe verbinden, zum Beispiel kann es Sie warnen, dass es keine Zeilen per E-Mail
zum Zählen von Zeilen sind auch verwenden können, die Aufgabe: Zeilenanzahl (in den neuesten SSIS-Versionen vorhanden); Die Zeilenanzahl-Umwandlung zählt Zeilen, wenn sie einen Datenfluss durchlaufen, und speichert die endgültige Anzahl in einer Variablen.
Ich hoffe es hilft
Danke Alex. Aber ich habe ein diff. Szenario. Es gibt einen Foreach-Loop-Container mit Foreach From Variable Enumerator. Basierend auf dieser Variablen-Skriptaufgabe wird die sqlCommand-Abfrage erstellt, die als SQLCommad von der Variable an die Datenfluss-Task-Quelle übergeben wird. JA Ich habe die Zeilenzählfunktion verwendet, geht aber letztendlich zum Datenflusstaskziel und erstellt eine CSV-Datei. –
Vielen Dank auch, Warum nicht auch dynamisch erstellen die Abfrage Zeilen (innerhalb einer Variablen) und dann Platzieren Sie die Überprüfung der Anzahl der Zeilen (SQL-Aufgabe mit Abfrage von Variable ausführen) vor der Datenflusstask? Auf diese Weise sind Sie immer noch in der Schleife. –
Ja Alex das ist eine Lösung. Gibt es einen anderen Ansatz, so dass wir wissen, dass keine Datensätze von der Dataflow-Task-Quelle (SQLCommand von Variablen) betroffen sind, und leiten Sie die Ausgabe der Ausgabedatei nicht um. –