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


Выполнение операций массового копирования (ODBC)

Стандарт ODBC напрямую не поддерживает операции массового копирования SQL Server. При соединении с экземпляром SQL Server версии 7.0 или более поздней, драйвер ODBC собственного клиента SQL Server поддерживает функции библиотеки DB-Library, выполняющие операции массового копирования в SQL Server. Этот собственный модуль драйвера обеспечивает легкий путь обновления для существующих приложений DB-Library, использующих функции массового копирования. Специализированная поддержка массового копирования реализована в следующих файлах.

  • sqlncli.h

    Включает прототипы функций и определения констант для функций массового копирования. Файл sqlncli.h должен входить в состав приложения ODBC, выполняющего операции массового копирования, и при компиляции приложения должен находиться в пути поиска включаемых файлов.

  • sqlncli10.lib

    Должна находиться в пути к библиотекам компоновщика и определена как файл для связывания. Файл sqlncli10.lib распространяется вместе с драйвером ODBC собственного клиента SQL Server.

  • sqlncli10.dll

    Необходима во время выполнения. Файл sqlncli10.dll распространяется вместе с драйвером ODBC собственного клиента SQL Server.

ПримечаниеПримечание

Функция ODBC SQLBulkOperations не имеет связи с функциями массового копирования SQL Server. Для выполнения операций массового копирования приложения должны использовать собственные функции массового копирования SQL Server.

Массовое копирование с минимальным ведением журнала

В модели полного восстановления все операции вставки строк, выполняемые при массовой загрузке, полностью регистрируются в журнале транзакций. При загрузке большого количества данных это может привести к быстрому заполнению журнала транзакций. При определенных условиях возможно минимальное протоколирование. Минимальное ведение журнала снижает вероятность заполнения журнала в результате массовой загрузки и является также более эффективным, чем полное ведение журнала.

Дополнительные сведения об использовании минимального ведения журнала см. в разделе Предварительные условия для минимального ведения журнала массового импорта данных.

Примечания

При использовании программы bcp.exe в SQL Server 2005 или более поздних версий могут возникать ошибки в ситуациях, в которых в версиях, предшествующих SQL Server 2005, ошибок не возникало. Это происходит по той причине, что в более поздних версиях программа bcp.exe больше не выполняет явное преобразование типов данных. До версии SQL Server 2005 программа bcp.exe преобразовывала числовые данные в тип money, если целевая таблица имела тип данных money. Однако в этой ситуации программа bcp.exe просто усекала лишние поля. Начиная с версии SQL Server 2005, если типы данных в файле и целевой таблице не совпадают, программа bcp.exe выдает ошибку, если присутствуют данные, которые придется усечь, чтобы поместить в целевую таблицу. Для устранения этой ошибки преобразуйте данные в целевой тип данных. При необходимости используйте программу bcp.exe версии, предшествующей SQL Server 2005.