Freigeben über


SQL Server-Ziel

Das SQL Server-Ziel verbindet sich mit einer lokalen SQL Server-Datenbank und lädt Daten in großen Mengen in SQL Server-Tabellen und -Ansichten. Sie können das SQL Server-Ziel nicht in Paketen verwenden, die auf eine SQL Server-Datenbank auf einem Remoteserver zugreifen. Stattdessen sollten die Pakete das OLE DB-Ziel verwenden. Weitere Informationen finden Sie unter OLE DB-Ziel.

Erlaubnisse

Benutzer, die Pakete ausführen, die das SQL Server-Ziel enthalten, benötigen die Berechtigung "Globale Objekte erstellen". Sie können Benutzern diese Berechtigung erteilen, indem Sie das im Menü "Verwaltung" geöffnete Tool "Lokale Sicherheitsrichtlinie" verwenden. Wenn Beim Ausführen eines Pakets, das das SQL Server-Ziel verwendet, eine Fehlermeldung angezeigt wird, stellen Sie sicher, dass das Konto, das das Paket ausführt, über die Berechtigung "Globale Objekte erstellen" verfügt.

Masseneinfügungen

Wenn Sie versuchen, das SQL Server-Ziel zum Massenladen von Daten in eine SQL Server-Remotedatenbank zu verwenden, wird möglicherweise eine Fehlermeldung wie folgt angezeigt: "Ein OLE DB-Eintrag ist verfügbar. Quelle: "Microsoft SQL Server Native Client" Hresult: 0x80040E14 Beschreibung: "Massenladevorgang nicht möglich, da das SSIS-Dateizuordnungsobjekt 'Global\DTSQLIMPORT' nicht geöffnet werden konnte. Betriebssystemfehlercode 2 (Das System kann die angegebene Datei nicht finden.) Stellen Sie sicher, dass Sie über die Windows-Sicherheit auf einen lokalen Server zugreifen.""

Das SQL Server-Ziel bietet die gleiche hochgeschwindigkeitsige Einfügung von Daten in SQL Server, die von der Aufgabe "Masseneinfügung" bereitgestellt wird; Mithilfe des SQL Server-Ziels kann ein Paket jedoch Transformationen auf Spaltendaten anwenden, bevor die Daten in SQL Server geladen werden.

Zum Laden von Daten in SQL Server sollten Sie das SQL Server-Ziel anstelle des OLE DB-Ziels verwenden.

Optionen für Masseneinfügungen

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

  • Bewahren Sie Identitätswerte aus der importierten Datendatei auf, oder verwenden Sie eindeutige Werte, die von SQL Server zugewiesen wurden.

  • NULL-Werte während des Massenladevorgangs beibehalten.

  • Überprüfen Sie die Einschränkungen für die Zieltabelle oder -ansicht während des Massenimportvorgangs.

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

  • Führen Sie Einfügetrigger aus, die auf der Zieltabelle während des Massenladevorgangs definiert sind.

  • Geben Sie die Nummer der ersten Zeile in der Eingabe an, die während des Masseneinfügevorgangs geladen werden soll.

  • Geben Sie die Nummer der letzten Zeile in der Eingabe an, die während des Masseneinfügevorgangs geladen werden soll.

  • Geben Sie die maximale Anzahl von Fehlern an, die zulässig sind, bevor der Massenladevorgang abgebrochen wird. Jede Zeile, die nicht importiert werden kann, wird als ein Fehler gezählt.

  • Geben Sie die Spalten in der Eingabe an, die sortierte Daten enthalten.

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

Leistungsverbesserungen

Um die Leistung eines Masseneinfügungsvorgangs und den Zugriff auf Tabellendaten während des Masseneinfügevorgangs zu verbessern, sollten Sie die Standardoptionen wie folgt ändern:

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

  • Vermeiden Sie während des Massenladevorgangs die Ausführung von in der Zieltabelle definierten Einfügetriggern.

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

Konfiguration des SQL Server-Ziels

Sie können das SQL Server-Ziel auf folgende Weise konfigurieren:

  • Geben Sie die Tabelle oder Ansicht an, in die die Daten geladen werden sollen.

  • Passen Sie den Massenladevorgang an, indem Sie Optionen angeben, z. B. ob Einschränkungen überprüft werden sollen.

  • Geben Sie an, ob alle Zeilen in einem Batch commit ausgeführt werden sollen, oder legen Sie die maximale Anzahl von Zeilen fest, die als Batch commit ausgeführt werden sollen.

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

Dieses Ziel verwendet einen OLE DB-Verbindungs-Manager, um eine Verbindung mit einer Datenquelle herzustellen, 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, aus dem Sie einen OLE DB-Verbindungs-Manager erstellen können. Dadurch werden Datenquellen und Datenquellenansichten für das SQL Server-Ziel verfügbar.

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

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

Um weitere Informationen zu den Eigenschaften zu erhalten, die Sie im Dialogfeld SQL Server-Ziel-Editor festlegen können, klicken Sie auf eines der folgenden Themen:

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:

Siehe auch

Datenfluss