Skripttask

 

Betrifft: SQL Server 2016

Der Skripttask stellt Code zum Ausführen von Funktionen, die in den integrierten Tasks und Transformationen nicht verfügbar sind, die SQL Server Integration Services bietet. Der Skripttask kann auch Funktionen in einem einzigen Skript zusammenfassen, statt mehrere Tasks und Transformationen zu verwenden. Sie verwenden den Skripttask für einmalige Aktionen in einem Paket (einmalig pro aufgezähltem Objekt), anstatt diese einmalig pro Datenzeile auszuführen.

Der Skripttask kann für folgende Zwecke verwendet werden:

  • Zugreifen auf Daten mithilfe anderer Technologien, die nicht von integrierten Verbindungstypen unterstützt werden. Beispielsweise kann ein Skript mithilfe von Active Directory Service Interfaces (ADSI) auf Benutzernamen von Active Directory zugreifen und diese extrahieren.

  • Erstellen eines paketspezifischen Leistungsindikators. Beispielsweise kann ein Skript einen Leistungsindikator erstellen, der aktualisiert wird, während ein komplexer Task oder ein Task mit einem geringen Leistungsverhalten ausgeführt wird.

  • Identifizieren, ob angegebene Dateien leer sind bzw. wie viele Zeilen sie enthalten, und deren Auswirkungen auf die Ablaufsteuerung in einem Paket auf Basis dieser Informationen. Enthält eine Datei beispielsweise 0 Zeilen, wird der Wert einer Variablen auf 0 festgelegt, und eine Rangfolgeneinschränkung, die den Wert auswertet, verhindert das Kopieren der Datei mit einem Dateisystemtask.

Wenn Sie das Skript verwenden müssen, um die gleichen Aktionen für jede Datenzeile einer Gruppe auszuführen, verwenden Sie anstelle des Skripttasks die Skriptkomponente. Eine Skriptkomponente wird beispielsweise verwendet, wenn Sie auswerten möchten, ob eine Portogebühr und das Auslassen von Datenzeilen mit extrem hohen oder niedrigen Beträgen angemessen sind. Weitere Informationen finden Sie unter Script Component.

Falls ein Skript von mehreren Paketen verwendet wird, sollten Sie einen benutzerdefinierten Task erstellen, statt den Skripttask zu verwenden. Weitere Informationen finden Sie unter Entwicklung eines benutzerdefinierten Tasks.

Nachdem Sie entschieden haben, dass die Skriptkomponente für Ihr Paket geeignet ist, müssen Sie das Skript entwickeln, das vom Task verwendet wird, und den Task konfigurieren.

Der Skripttask verwendet Microsoft Visual Studio Tools for Applications (VSTA) als Umgebung zum Erstellen der Skripts und des Moduls, die diese Skripts ausgeführt wird.

VSTA enthält alle Standardfunktionen der Visual Studio Umgebung, z. B. die farbcodierten Visual Studio -Editor IntelliSense und Objekt-Explorer. VSTA verwendet zudem den Debugger, der auch von anderen Microsoft -Entwicklungstools verwendet wird. Breakpoints im Skript sind vollständig mit Breakpoints in Tasks und Containern von Integration Services kompatibel. VSTA unterstützt die Microsoft Visual Basic und Microsoft Programmiersprachen in Visual c#.

Zum Ausführen eines Skripts muss VSTA auf dem Computer installiert sein, auf dem das Paket ausgeführt wird. Wenn das Paket ausgeführt wird, lädt der Task das Skriptmodul und führt das Skript aus. Sie können auf externe .NET-Assemblys zugreifen, indem Sie Verweise auf die Assemblys im Projekt hinzufügen.

System_CAPS_ICON_note.jpg Hinweis


Anders als in früheren Versionen, in denen Sie angeben konnten, ob die Skripts vorkompiliert sind, werden in SQL Server 2008 Integration Services (SSIS) und nachfolgenden Versionen alle Skripts vorkompiliert. Wenn ein Skript vorkompiliert ist, wird das Sprachmodul zur Laufzeit nicht geladen, und das Paket wird schneller ausgeführt. Kompilierte binäre Dateien belegen jedoch erheblich mehr Speicherplatz.

Es gibt folgende Möglichkeiten, um den Skripttask zu konfigurieren:

  • Stellen Sie das benutzerdefinierte Skript bereit, das von dem Task ausgeführt wird.

  • Geben Sie die Methode im VSTA-Projekt an, die die Integration Services -Laufzeit als Einstiegspunkt in den Code des Skripttasks aufruft.

  • Geben Sie die Skriptsprache an.

  • Geben Sie optional Listen mit schreibgeschützten und Lese-/Schreibvariablen für die Verwendung im Skript an.

Diese Eigenschaften können Sie mit dem SSIS -Designer oder programmgesteuert festlegen.

Konfigurieren des Skripttasks im Designer

In der folgenden Tabelle wird das ScriptTaskLogEntry -Ereignis beschrieben, das für den Skripttask protokolliert werden kann. Das ScriptTaskLogEntry -Ereignis wird für die Protokollierung auf der Registerkarte Details des Dialogfelds SSIS-Protokolle konfigurieren ausgewählt. Weitere Informationen finden Sie unter Integration Services & #40; SSIS- & #41; Protokollierung und benutzerdefinierte Meldungen für die Protokollierung.

ProtokolleintragBeschreibung
ScriptTaskLogEntryGibt die Ergebnisse des Implementierens der Protokollierung innerhalb des Skripts an. Der Task schreibt für jeden Aufruf der Log -Methode des Dts -Objekts einen Protokolleintrag. Der Task schreibt diese Einträge, wenn der Code ausgeführt wird. Weitere Informationen finden Sie unter Logging in the Script Task.

Klicken Sie auf die folgenden Themen, um weitere Informationen zu den Eigenschaften zu erhalten, die Sie im SSIS -Designer festlegen können:

Weitere Informationen zum Festlegen dieser Eigenschaften im SSIS -Designer finden Sie im folgenden Thema:

Programmgesteuertes Konfigurieren des Skripttasks

Weitere Informationen zum programmgesteuerten Festlegen dieser Eigenschaften finden Sie im folgenden Thema:

Community-Beiträge

HINZUFÜGEN
Anzeigen: