Skriptkomponente

Aktualisiert: 17. Juli 2006

Die Skriptkomponente hostet Skripts und ermöglicht einem Paket benutzerdefinierten Skriptcode einzuschließen und benutzerdefinierten Skriptcode auszuführen. Die Skriptkomponente kann in Paketen für folgende Zwecke verwendet werden:

  • Anwenden mehrerer Transformationen auf Daten, statt mehrere Transformationen im Datenfluss zu verwenden. Beispielsweise können mit einem Skript die Werte in zwei Spalten hinzugefügt und dann der Mittelwert der Summe berechnet werden.
  • Zugreifen auf Geschäftsregeln in einer vorhandenen .NET-Assembly. Beispielsweise kann ein Skript eine Geschäftsregel anwenden, die den gültigen Wertebereich einer Income-Spalte angibt.
  • Verwenden benutzerdefinierter Formeln und Funktionen zusätzlich zu den Funktionen und Operatoren der Ausdrucksgrammatik von Integration Services. Überprüfen Sie z. B. Kreditkartennummern mithilfe der LUHN-Formel.
  • Überprüfen von Spaltendaten und Auslassen von Datensätzen mit ungültigen Daten. Beispielsweise kann ein Skript auswerten, ob eine Portogebühr angemessen ist, und Datensätze mit extrem hohen oder niedrigen Beträgen auslassen.

Die Skriptkomponente ist eine schnelle und einfache Möglichkeit, um benutzerdefinierte Funktionen in einen Datenfluss einzuschließen. Wenn Sie jedoch den Skriptcode in mehreren Paketen wiederverwenden möchten, sollten Sie nicht die Skriptkomponente verwenden, sondern eine benutzerdefinierte Komponente programmieren. Weitere Informationen finden Sie unter Developing a Custom Data Flow Component.

Die Skriptkomponente kann als Quelle, als Transformation oder als Ziel verwendet werden. Diese Komponente unterstützt eine Eingabe und mehrere Ausgaben. Abhängig von der Verwendungsweise der Komponente unterstützt sie entweder eine Eingabe und/oder Ausgaben. Das Skript wird von jeder Zeile in der Eingabe oder Ausgabe aufgerufen.

  • Wenn die Skriptkomponente als Quelle verwendet wird, werden mehrere Ausgaben unterstützt.
  • Wenn die Skriptkomponente als Transformation verwendet wird, werden eine Eingabe und mehrere Ausgaben unterstützt.
  • Wenn die Skriptkomponente als Ziel verwendet wird, wird eine Eingabe unterstützt.

Fehlerausgaben werden von der Skriptkomponente nicht unterstützt.

Es gibt folgende Möglichkeiten, um die Skriptkomponente zu konfigurieren:

  • Wählen Sie Eingabespalten aus, auf die verwiesen werden kann.
  • Stellen Sie das Skript bereit, das von der Komponente ausgeführt wird.
  • Geben Sie an, ob das Skript vorkompiliert ist.
  • Stellen Sie durch Kommas getrennte Listen mit schreibgeschützten Variablen und Lese-/Schreibvariablen bereit.
  • Fügen Sie mehr Ausgaben hinzu, und fügen Sie Ausgabespalten hinzu, denen das Skript Werte zuweist.

Mithilfe des Dialogfeldes Transformations-Editor für Skripterstellung im SSIS-Designer können Sie nur eine Eingabe konfigurieren.

Zum Erstellen Ihrer Skripts öffnen Sie im Dialogfeld Transformations-Editor für Skripterstellung die Visual Studio für Applikationen-Umgebung (VSA). VSA enthält alle Standardfeatures der Visual Studio .NET-Umgebung, wie z. B. den Visual Studio-Editor mit Farbcodierung, IntelliSense und den Objektbrowser. Das von der Skriptkomponente verwendete Skript wird in der Paketdefinition gespeichert. Es gibt keine separate Skriptdatei.

Skriptkomponentenmodi

Im SSIS-Designer weist die Skriptkomponente zwei Modi auf: Metadatenentwurfsmodus und Codeentwurfsmodus. Im Metadatenentwurfsmodus können Sie Eingaben und Ausgaben der Skriptkomponente hinzufügen und ändern, aber Sie können keinen Code erstellen. Nachdem Sie alle Eingaben und Ausgaben konfiguriert haben, wechseln Sie zum Codeentwurfsmodus, um das Skript zu erstellen. Die Skriptkomponente generiert von den Metadaten der Eingaben und Ausgaben automatisch Basiscode. Wenn Sie die Metadaten ändern, nachdem die Skriptkomponente den Basiscode generiert hat, kann es sein, dass der Code nicht mehr kompiliert wird, weil der aktualisierte Basiscode mit Ihrem Code inkompatibel ist.

Skript

Die Skriptkomponente stellt ein VSA-Projekt bereit, das eine automatisch generierte Klasse namens ScriptMain generiert, die die Komponentenmetadaten darstellt. Wenn z. B. die Skriptkomponente als Transformation mit drei Ausgaben verwendet wird, enthält ScriptMain eine Methode für jede Ausgabe. ScriptMain ist der Einstiegspunkt in das Skript.

Die Entwicklungsumgebung für Skripts von Visual Studio for Applications (VSA) unterstützt als Skriptsprache nur Microsoft Visual Basic .NET.

Informationen zur Programmierung der Skriptkomponente finden Sie unter Extending the Data Flow with the Script Component. Detailliertere Informationen zum Konfigurieren der Skriptkomponente als Quelle, Transformation oder Ziel finden Sie unter Developing Specific Types of Script Components. Zusätzliche Beispiele, welche die Verwendung der Skriptkomponente veranschaulichen (wie z. B. ODBC-Ziele), finden Sie unter Additional Script Component Examples.

Vorkompiliertes Skript

Die Skriptkomponente kann so konfiguriert werden, dass Skript vorkompiliert wird. Falls das Skript vorkompiliert ist, wird es schneller gestartet und kann in einer 64-Bit-Umgebung ausgeführt werden. Pakete mit vorkompilierten Skripts sind jedoch größer. Außerdem ist das Debuggen von kompilierten Skripts nicht möglich. Sie sollten diese Faktoren bedenken, bevor Sie sich dazu entschließen, ein Skript vorzukompilieren.

Die Skriptkomponente ist standardmäßig so konfiguriert, dass das Skript vorkompiliert wird, und die PreCompile-Eigenschaft der Komponente ist auf True festgelegt. Während der Entwicklung und dem Debuggen eines Pakets ist die PreCompile-Eigenschaft in der Regel auf False festgelegt und wird anschließend vor dem Bereitstellen des Pakets auf True zurückgesetzt.

Konfigurieren der Skriptkomponente

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

Klicken Sie auf eines der folgenden Themen, um weitere Informationen zu den Eigenschaften zu erhalten, die Sie im Dialogfeld Transformations-Editor für Skripterstellung festlegen können:

Klicken Sie auf eines der folgenden Themen, um weitere Informationen zu den Eigenschaften zu erhalten, die Sie im Fenster Eigenschaften oder programmgesteuert festlegen können:

Klicken Sie auf eines der folgenden Themen, um weitere Informationen zum Festlegen von Eigenschaften zu erhalten:

Siehe auch

Konzepte

SQL Server Integration Services-Transformationen
Überlegungen zu Integration Services auf 64-Bit-Computern

Andere Ressourcen

Extending the Data Flow with the Script Component

Hilfe und Informationen

Informationsquellen für SQL Server 2005

Änderungsverlauf

Version Verlauf

17. Juli 2006

Geänderter Inhalt:
  • Hinweis auf Einschränkungen bei der Verwendung von Skriptsprachen wurden hinzugefügt.

05. Dezember 2005

Geänderter Inhalt:
  • Beschreibung der PreCompile-Eigenschaft wurde hinzugefügt.