Massenkopievorgänge in SQL Server

Microsoft SQL Server enthält ein beliebtes Befehlszeilenprogramm namens bcp, das große Dateien schnell in Tabellen oder Ansichten in SQL Server-Datenbanken kopiert. Mit der SqlBulkCopy Klasse können Sie Lösungen mit verwaltetem Code schreiben, die ähnliche Funktionen bieten. Es gibt andere Möglichkeiten zum Laden von Daten in eine SQL Server Tabelle (INSERTz. B. Anweisungen), bietet aber SqlBulkCopy einen erheblichen Leistungsvorteil gegenüber ihnen.

Die SqlBulkCopy Klasse schreibt Daten nur in SQL Server Tabellen. Die Datenquelle ist nicht auf SQL Server beschränkt. Verwenden Sie eine beliebige Quelle, die Daten in die DataTable-Klasse lädt oder über die IDataReader-Schnittstelle verfügbar macht.

Mit dem Kurs SqlBulkCopy können Sie Folgendes ausführen:

  • Einen einzelnen Massenkopiervorgang

  • Mehrere Massenkopiervorgänge

  • Einen Massenkopiervorgang innerhalb einer Transaktion

Hinweis

Um Daten aus einer Datei zu laden, auf die der Server zugreifen kann, führen Sie die Transact-SQL-Anweisung (T-SQL) BULK INSERT mit SqlCommand aus. Dieser Vorgang liest die Datei auf dem Server, im Gegensatz zu SqlBulkCopy, das Daten vom Client sendet.

In diesem Abschnitt

Beispielsetup für Massenkopien Beschreibt die Tabellen, die in den Beispielen für Massenkopien verwendet werden, und stellt SQL-Skripts zum Erstellen der Tabellen in der AdventureWorks-Datenbank bereit.

Vorgänge für einzelne Massenkopien Beschreibt, wie Sie eine einzelne Massenkopie von Daten in eine Instanz von SQL Server mithilfe der SqlBulkCopy Klasse durchführen und wie Sie den Massenkopievorgang mit Transact-SQL Anweisungen und der SqlCommand Klasse ausführen.

Mehrere Massenkopievorgänge Beschreibt, wie Mehrere Massenkopievorgänge von Daten in eine Instanz von SQL Server mithilfe der SqlBulkCopy Klasse ausgeführt werden.

Transaktions- und Massenkopievorgänge Beschreibt, wie ein Massenkopievorgang innerhalb einer Transaktion ausgeführt wird, einschließlich des Commits oder Rollbacks der Transaktion.

Siehe auch