Поделиться через


Операции массового копирования в SQL Server

Microsoft SQL Server включает популярную служебную программу командной строки bcp, позволяющую быстро выполнять массовое копирование больших файлов в таблицы или представления баз данных SQL Server. Класс SqlBulkCopy позволяет создавать решения с управляемым кодом, которые предоставляют аналогичные возможности. Существуют другие способы загрузки данных в таблицу SQL Server (например, с помощью инструкции INSERT), но SqlBulkCopy делает это значительно быстрее.

Класс SqlBulkCopy можно использовать для записи данных только в таблицы SQL Server. SQL Server не является единственным источником данных. Можно использовать любой источник данных при условии, что данные можно будет загрузить в экземпляр DataTable или считать экземпляром IDataReader.

Класс SqlBulkCopy предоставляет следующие возможности:

  • одну операцию массового копирования;

  • Несколько операций массового копирования

  • операцию массового копирования в транзакции.

Примечание.

При использовании платформы .NET Framework 1.1 или более ранней версии (не поддерживающей класс SqlBulkCopy) инструкцию SQL Server Transact-SQL BULK INSERT можно выполнить при помощи объекта SqlCommand.

В этом разделе

Установка примера массового копирования
Описание таблиц, используемых в примерах с массовым копированием, и примеры скриптов SQL для создания таблиц в базе данных AdventureWorks.

Отдельные операции массового копирования
Описание процессов одного массового копирования данных в экземпляр SQL Server с помощью класса SqlBulkCopy, а также массового копирования с помощью инструкций Transact-SQL и класса SqlCommand.

Несколько операций массового копирования
Описание выполнения нескольких операций массового копирования данных в экземпляр SQL Server с помощью класса SqlBulkCopy.

Транзакции и операции массового копирования
Сведения о том, как выполнить операцию массового копирования в рамках транзакции, в том числе как зафиксировать или откатить эту транзакцию.

См. также