Skriptkomponente

Gilt für:SQL Server SSIS Integration Runtime in Azure Data Factory

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 Entwickeln einer benutzerdefinierten Datenflusskomponente.

Hinweis

Wenn die Skriptkomponente ein Skript enthält, das versucht, den Wert einer Spalte zu lesen, die NULL ist, kommt es bei der Ausführung des Pakets zu einem Fehler der Skriptkomponente. Es wird die Verwendung der IsNull -Methode im Skript empfohlen, um zu bestimmen, ob die Spalte NULL ist, bevor versucht wird, den Spaltenwert zu lesen.

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.

Nachdem Sie entschieden haben, dass die Skriptkomponente für Ihr Paket geeignet ist, müssen Sie die Eingaben und Ausgaben konfigurieren, das Skript entwickeln, das von der Komponente verwendet wird, und die Komponente konfigurieren.

Grundlegendes zu den 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.

Erstellen des von der Komponente verwendeten Skripts

Die Skriptkomponente verwendet Microsoft Visual Studio Tools for Applications (VSTA) als Umgebung zum Erstellen der Skripts. Sie greifen auf VSTA im Transformations-Editor für Skripterstellungzu. Weitere Informationen finden Sie unter Transformations-Editor für Skripterstellung (Seite „Skript“).

Die Skriptkomponente stellt ein VSTA-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.

VSTA enthält alle Standardfunktionen der Visual Studio -Umgebung, z. B. den Visual Studio -Editor mit Farbcodierung, IntelliSense und den Objektkatalog. Das von der Skriptkomponente verwendete Skript wird in der Paketdefinition gespeichert. Wenn Sie das Paket entwerfen, wird der Skriptcode vorübergehend in eine Projektdatei geschrieben.

VSTA unterstützt die Programmiersprachen Microsoft Visual C# und Microsoft Visual Basic.

Informationen zum Programmieren der Skriptkomponente finden Sie unter Erweitern des Datenflusses mit der Skriptkomponente. 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.

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 die Sprach-Engine zur Laufzeit nicht geladen, und das Paket wird schneller ausgeführt. Kompilierte binäre Dateien belegen jedoch erheblich mehr Speicherplatz.

Konfigurieren der Skriptkomponente

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

  • Wählen Sie die Eingabespalten aus, auf die verwiesen werden kann.

    Hinweis

    Sie können nur einen Eingang konfigurieren, wenn Sie den SSIS -Designer verwenden.

  • Stellen Sie das Skript bereit, das von der Komponente ausgeführt wird.

  • Geben Sie die Skriptsprache an.

  • Stellen Sie durch Trennzeichen 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.

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

Konfigurieren der Skriptkomponente im Designer

Klicken Sie auf das folgende Thema, um weitere Informationen zum Festlegen dieser Eigenschaften im SSIS -Designer zu erhalten:

Programmgesteuertes Konfigurieren der Skriptkomponente im Designer

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 anzuzeigen:

Skriptkomponententyp auswählen

Mithilfe des Dialogfelds Skriptkomponententyp auswählen können Sie angeben, ob eine Skripttransformation mit einer Vorkonfiguration als Quelle, Transformation oder Ziel verwendet wird.

Weitere Informationen zur Skriptkomponente finden Sie unter Configuring the Script Component in the Script Component Editor (Konfigurieren der Skriptkomponente im Skriptkomponenten-Editor). Weitere Informationen zur Programmierung der Skriptkomponente finden Sie unter Erweitern des Datenflusses mit der Skriptkomponente.

Tastatur

Ihre Auswahl zwischen Quelle, Zielund Transformation beeinflusst die Konfiguration der Skripttransformation und die Seiten des Transformations-Editors für die Skripterstellung.

Transformations-Editor für Skripterstellung (Seite Verbindungs-Manager)

Auf der Seite Verbindungs-Manager von Transformations-Editor für Skripterstellung können Sie Verbindungen angeben, die vom Skript verwendet werden.

Weitere Informationen zur Skriptkomponente finden Sie unter Configuring the Script Component in the Script Component Editor (Konfigurieren der Skriptkomponente im Skriptkomponenten-Editor). Weitere Informationen zur Programmierung der Skriptkomponente finden Sie unter Erweitern des Datenflusses mit der Skriptkomponente.

Tastatur

Connection managers
Zeigen Sie die Liste der Verbindungen an, die durch das Skript verwendet werden können.

Name
Geben Sie einen eindeutigen aussagekräftigen Namen für die Verbindung ein.

Verbindungs-Manager
Wählen Sie einen Verbindungs-Manager aus der Liste aus, oder wählen Sie <Neue Verbindung> aus, um das Dialogfeld SSIS-Verbindungs-Manager hinzufügen zu öffnen.

Beschreibung
Geben Sie eine Beschreibung für die Verbindung ein.

Add (Hinzufügen)
Fügen Sie der Liste Verbindungs-Manager eine weitere Verbindung hinzu.

Remove
Entfernen Sie die ausgewählte Verbindung aus der Liste Verbindungs-Manager .

Transformations-Editor für Skripterstellung (Seite Eingabespalten)

Legen Sie mithilfe der Seite Eingabespalten des Dialogfelds Transformations-Editor für Skripterstellung die Eigenschaften für Eingabespalten fest.

Hinweis

Für Quellkomponenten, die Ausgaben, aber keine Eingaben haben, wird die Seite Eingabespalten nicht angezeigt.

Weitere Informationen zur Skriptkomponente finden Sie unter Configuring the Script Component in the Script Component Editor (Konfigurieren der Skriptkomponente im Skriptkomponenten-Editor). Weitere Informationen zur Programmierung der Skriptkomponente finden Sie unter Erweitern des Datenflusses mit der Skriptkomponente.

Tastatur

Eingabename
Wählen Sie eine Option aus der Liste der verfügbaren Eingaben aus.

Verfügbare Eingabespalten
Geben Sie mithilfe der Kontrollkästchen die Spalten an, die von der Skripttransformation verwendet werden.

Eingabespalte
Wählen Sie für jede Zeile eine Spalte aus der Liste der verfügbaren Eingabespalten aus. Ihre Auswahl wird entsprechend in der Auswahl der Kontrollkästchen in der Tabelle Verfügbare Eingabespaltendeutlich.

Ausgabealias
Geben Sie einen Alias für jede Spalte ein. Standardmäßig wird der Name der Eingabespalte verwendet. Sie können jedoch auch einen beschreibenden Namen angeben, sofern dieser eindeutig ist.

Verwendungstyp
Geben Sie an, ob die Skripttransformation jede Spalte als ReadOnly oder ReadWritebehandeln soll.

Transformations-Editor für Skripterstellung (Seiten Eingaben und Ausgaben)

Auf der Seite Eingaben und Ausgaben des Dialogfelds Transformations-Editor für Skripterstellung können Sie Ein- und Ausgaben für die Skripterstellung hinzufügen, entfernen oder konfigurieren.

Hinweis

Für Quellkomponenten sind keine Eingaben, sondern nur Ausgaben, und für Zielkomponenten keine Ausgaben, sondern nur Eingaben vorhanden. Transformationen verfügen über Ein- und Ausgaben.

Weitere Informationen zur Skriptkomponente finden Sie unter Configuring the Script Component in the Script Component Editor (Konfigurieren der Skriptkomponente im Skriptkomponenten-Editor). Weitere Informationen zur Programmierung der Skriptkomponente finden Sie unter Erweitern des Datenflusses mit der Skriptkomponente.

Tastatur

Inputs and outputs
Wählen Sie auf der linken Seite eine Eingabe oder Ausgabe, um die entsprechenden Eigenschaften in der Tabelle auf der rechten Seite anzuzeigen. Welche Eigenschaften bearbeitet werden können, ist von der getroffenen Auswahl abhängig. Viele dieser Eigenschaften sind schreibgeschützt. Weitere Informationen zu den einzelnen Eigenschaften finden Sie unter den folgenden Themen.

Common Properties

Benutzerdefinierte Eigenschaften von Transformationen

Ausgabe hinzufügen
Fügen Sie der Liste eine weitere Ausgabe hinzu.

Spalte hinzufügen
Wählen Sie einen Ordner aus, in den die neue Ausgabespalte platziert werden soll, und fügen Sie anschließend die Spalte hinzu, indem Sie auf Spalte hinzufügenklicken.

Ausgabe entfernen
Wählen Sie eine Ausgabe aus, und entfernen Sie sie dann, indem Sie auf Ausgabe entfernenklicken.

Spalte entfernen
Wählen Sie eine Spalte aus, und entfernen Sie sie dann, indem Sie auf Spalte entfernenklicken.

Transformations-Editor für Skripterstellung (Seite Skript)

Auf der Registerkarte Skript des Dialogfelds Transformations-Editor für Skripterstellung können Sie ein Skript und verknüpfte Eigenschaften angeben.

Weitere Informationen zur Skriptkomponente finden Sie unter Configuring the Script Component in the Script Component Editor (Konfigurieren der Skriptkomponente im Skriptkomponenten-Editor). Weitere Informationen zur Programmierung der Skriptkomponente finden Sie unter Erweitern des Datenflusses mit der Skriptkomponente.

Tastatur

Eigenschaften
Zeigt die Skripttransformationseigenschaften an und ermöglicht Änderungen. Viele dieser Eigenschaften sind schreibgeschützt. Die folgenden Eigenschaften können Sie ändern:

value BESCHREIBUNG
Beschreibung Beschreibt den Zweck der Skripttransformation.
LocaleID Gibt das Gebietsschema für die Bereitstellung regionsspezifischer Informationen für das Bestellen sowie für Datums- und Zeitformate an.
Name Geben Sie einen aussagekräftigen Namen für die Komponente ein.
ValidateExternalMetadata Zeigt an, ob von der Skripttransformation zur Entwurfszeit Spaltenmetadaten mithilfe externer Datenquellen überprüft werden. Bei dem Wert false wird die Überprüfung bis zur Ausführungszeit verzögert.
ReadOnlyVariables Geben Sie eine durch Trennzeichen getrennte Liste von Variablen für den schreibgeschützten Zugriff durch die Skripttransformation ein.

Hinweis: Bei Variablennamen wird nach Groß-/Kleinschreibung unterschieden.
ReadWriteVariables Geben Sie eine durch Trennzeichen getrennte Liste von Variablen für den Lese-/Schreibzugriff durch die Skripttransformation ein.

Hinweis: Bei Variablennamen wird nach Groß-/Kleinschreibung unterschieden.
ScriptLanguage Wählen Sie die Skriptsprache aus, die von der Skriptkomponente verwendet werden soll.

Um die Standardskriptsprache für Skriptkomponenten und Skripttasks festzulegen, verwenden Sie im Dialogfeld Optionen auf der Seite Allgemein die Option Skriptsprache .
UserComponentTypeName Gibt die ScriptComponentHost -Klasse und die Microsoft.SqlServer.TxScript -Assembly an, die die SQL Server -Infrastruktur unterstützen.

Skript bearbeiten
Verwenden Sie Microsoft Visual Studio Tools for Applications (VSTA), um ein Skript zu erstellen oder zu ändern.

SQL Server Integration Services-Transformationen

Erweitern des Datenflusses mit der Skriptkomponente