Freigeben über


SQL Server-Ziel

Das SQL Server-Ziel stellt eine Verbindung mit einer lokalen SQL Server -Datenbank her und kopiert Daten per Massenladen in SQL Server -Tabellen und -Sichten. Sie können das SQL Server-Ziel nicht in Paketen verwenden, die auf eine SQL Server -Datenbank auf einem Remoteserver zugreifen. Die Pakete sollten stattdessen ein OLE DB-Ziel verwenden. Weitere Informationen finden Sie unter OLE DB Destination.

Berechtigungen

Benutzer, die Pakete ausführen, die das SQL Server-Ziel einschließen, müssen über die Berechtigung "Erstellen globaler Objekte" verfügen. Sie können diese Berechtigung Benutzern erteilen, indem Sie das Tool Lokale Sicherheitsrichtlinie im Menü Verwaltung verwenden. Wenn Sie beim Ausführen eines Pakets, das das SQL Server-Ziel verwendet, eine Fehlermeldung erhalten, sollten Sie sicherstellen, dass das Konto, mit dem das Paket ausgeführt wird, über die Berechtigung "Erstellen globaler Objekte" verfügt.

Masseneinfügungen

Wenn Sie versuchen, das SQL Server-Ziel zum Massenladen von Daten in eine Remote-Datenbank von SQL Server zu verwenden, wird eine Fehlermeldung der folgenden Form angezeigt: "Ein OLE DB-Datensatz ist verfügbar." Quelle: "Microsoft SQL Server Native Client" Hresult: 0x80040E14 Beschreibung: "Massenladen war nicht möglich, weil das SSIS-Dateizuordnungsobjekt 'Global\DTSQLIMPORT' nicht geöffnet werden konnte. Betriebssystemfehlercode 2 (Die angegebene Datei wurde nicht gefunden.). Stellen Sie sicher, dass Sie auf einen lokalen Server mit der Windows-Sicherheit zugreifen.""

Das SQL Server-Ziel bietet das gleiche Hochgeschwindigkeitseinfügen von Daten in SQL Server wie der Masseneinfügungstask. Mit dem SQL Server-Ziel kann jedoch ein Paket Transformationen auf Spaltendaten anwenden, bevor die Daten in SQL Servergeladen werden.

Zum Laden von Daten in SQL Serversollten Sie das Verwenden des SQL Server-Ziels anstelle des OLE DB-Ziels in Erwägung ziehen.

Masseneinfügungsoptionen

Falls das SQL Server-Ziel einen Datenzugriffsmodus für schnelles Laden verwendet, können Sie die folgenden Optionen für schnelles Laden angeben:

  • Identitätswerte aus der importierten Datendatei beibehalten oder von SQL Serverzugewiesene eindeutige Werte verwenden.

  • NULL-Werte während des Massenladevorgangs beibehalten.

  • Während des Massenimportvorgangs Einschränkungen der Zieltabelle oder -sicht überprüfen.

  • Sperre auf Tabellenebene für die Dauer des Massenladevorgangs abrufen.

  • INSERT-Trigger, die für die Zieltabelle definiert sind, während des Massenladevorgangs ausführen.

  • Die Nummer der ersten Zeile in der Eingabe angeben, die während des Masseneinfügungsvorgangs geladen werden soll.

  • Die Nummer der letzten Zeile in der Eingabe angeben, die während des Masseneinfügungsvorgangs geladen werden soll.

  • Die maximal zulässige Anzahl von Fehlern angeben, bevor der Massenladevorgang abgebrochen wird. Jede Zeile, die nicht importiert werden kann, wird als ein Fehler gezählt.

  • Die Spalten in der Eingabe angeben, die sortierte Daten enthalten.

Weitere Informationen zu Massenladeoptionen finden Sie unter BULK INSERT (Transact-SQL).

Leistungsverbesserungen

Sie sollten die Standardoptionen wie folgt ändern, um die Leistung einer Masseneinfügung und des Zugriffs auf Tabellendaten während des Masseneinfügungsvorgangs zu verbessern:

  • Überprüfen Sie während des Massenimportvorgangs keine Einschränkungen der Zieltabelle oder -sicht.

  • Führen Sie während des Massenladevorgangs keine INSERT-Trigger aus, die für die Zieltabelle definiert sind.

  • Wenden Sie keine Sperre auf die Tabelle an. Auf diese Weise ist die Tabelle während des Masseneinfügungsvorgangs weiterhin für andere Benutzer und Anwendungen verfügbar.

Konfiguration des SQL Server-Ziels

Es gibt folgende Möglichkeiten, um das SQL Server-Ziel zu konfigurieren:

  • Geben Sie die Tabelle oder Sicht an, in die die Daten massengeladen werden sollen.

  • Passen Sie den Massenladevorgang durch Angeben von Optionen an, wie z. B., ob Einschränkungen überprüft werden sollen.

  • Geben Sie an, ob für alle Zeilen ein Commit in einem Batch ausgeführt werden soll, oder legen Sie die maximale Anzahl von Zeilen fest, für die ein Commit als Batch ausgeführt werden soll.

  • Geben Sie ein Timeout für den Massenladevorgang an.

Dieses Ziel verwendet einen OLE DB-Verbindungs-Manager zum Herstellen einer Verbindung mit einer Datenquelle, und der Verbindungs-Manager gibt den zu verwendenden OLE DB-Anbieter an. Weitere Informationen finden Sie unter OLE DB Connection Manager.

Ein Integration Services -Projekt stellt auch das Datenquellenobjekt bereit, von dem Sie einen OLE DB-Verbindungs-Manager erstellen können. Auf diese Weise sind Datenquellen und Datenquellensichten für das SQL Server-Ziel verfügbar.

Das SQL Server-Ziel besitzt eine Eingabe. Eine Fehlerausgabe wird nicht unterstützt.

Sie können Eigenschaften 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 Ziel-Editor für SQL festlegen können:

Das Dialogfeld Erweiterter Editor enthält die Eigenschaften, die programmgesteuert festgelegt werden können. Klicken Sie auf eines der folgenden Themen, um weitere Informationen zu den Eigenschaften zu erhalten, die Sie im Dialogfeld Erweiterter Editor oder programmgesteuert festlegen können:

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

Weitere Informationen

Datenfluss