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 SQL Server (INSERT istruzioni , ad esempio) ma SqlBulkCopy offre un notevole vantaggio sulle prestazioni rispetto a tali tabelle.

La SqlBulkCopy classe scrive i dati solo in tabelle SQL Server. L'origine dati non è limitata a SQL Server. Usare qualsiasi origine che carica i dati nella DataTable classe o la espone tramite l'interfaccia IDataReader .

Con la SqlBulkCopy classe, puoi eseguire:

  • Operazione singola di copia collettiva

  • Operazioni di copia multiple su larga scala

  • Operazione di copia massiva all'interno di una transazione

Annotazioni

Per caricare dati da un file accessibile al server, eseguire l'istruzione Transact-SQL (T-SQL) BULK INSERT con SqlCommand. Questa operazione legge il file nel server, a differenza di SqlBulkCopy, che invia dati dal client.

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