Condividi tramite


Operazioni di copia bulk in SQL Server

Microsoft SQL Server include un'utilità della riga di comando comune denominata bcp per la copia bulk di file di grandi dimensioni in tabelle o viste nei database di SQL Server. La SqlBulkCopy classe consente di scrivere soluzioni di codice gestito che forniscono funzionalità simili. Esistono altri modi per caricare i dati in una tabella di SQL Server (istruzioni INSERT, ad esempio), ma SqlBulkCopy offre un notevole vantaggio in termini di prestazioni.

La classe SqlBulkCopy può essere usata per scrivere dati solo in tabelle di SQL Server. L'origine dati, tuttavia, non è limitata a SQL Server; è possibile usare qualsiasi origine dati, purché i dati possano essere caricati in un'istanza DataTable o letti con un'istanza IDataReader di .

Usando la SqlBulkCopy classe , è possibile eseguire:

  • Operazione singola di copia collettiva

  • Operazioni di copia multiple su larga scala

  • Operazione di copia massiva all'interno di una transazione

Annotazioni

Quando si usa .NET Framework versione 1.1 o precedente (che non supporta la SqlBulkCopy classe ), è possibile eseguire l'istruzione SQL Server Transact-SQL BULK INSERT usando l'oggetto SqlCommand .

In questa sezione

Installazione dell'esempio di copia bulk Vengono descritte le tabelle usate negli esempi di copia bulk e vengono forniti script SQL per la creazione delle tabelle nel database AdventureWorks.

Operazioni di copia bulk singola Viene descritto come eseguire una singola copia bulk dei dati in un'istanza di SQL Server usando la SqlBulkCopy classe e come eseguire l'operazione di copia bulk usando istruzioni Transact-SQL e la SqlCommand classe .

Più operazioni di copia bulk Viene descritto come eseguire più operazioni di copia bulk dei dati in un'istanza di SQL Server usando la SqlBulkCopy classe .

Operazioni di transazione e copia bulk Viene descritto come eseguire un'operazione di copia bulk all'interno di una transazione, incluso come eseguire il commit o il rollback della transazione.

Vedere anche