Как выполнить массовое копирование результирующего набора SELECT (ODBC)

Полный образец показывает, как использовать функции массового копирования для массового копирования из результирующего набора инструкции SELECT. Полный образец кода находится в файле BulkCopySelectResult.cpp, который можно загрузить на странице Загрузки SQL Server веб-узла MSDN. Этот образец разработан с помощью Microsoft Visual C++ 2005 и предназначен для ODBC версии 3.0 и выше.

Примечание по безопасностиПримечание по безопасности

При возможности используйте проверку подлинности Windows. Если проверка подлинности Windows недоступна, запросите у пользователя ввод учетных данных во время выполнения. Избегайте хранения учетных данных в файле. Если необходимо сохранить учетные данные, зашифруйте их с помощью API-интерфейса шифрования Win32.

Массовое копирование из результирующего набора инструкции SELECT

  1. Выделите дескриптор среды и дескриптор соединения.

  2. Чтобы включить операции массового копирования, укажите параметры SQL_COPT_SS_BCP и SQL_BCP_ON.

  3. Соединитесь с SQL Server.

  4. Вызовите функцию bcp_init, указав следующие сведения.

    • Укажите для параметра szTable значение NULL.

    • Имя файла данных, получающего данные результирующего набора.

    • Имя файла данных, в который сохраняются все сообщения об ошибках массового копирования (укажите значение NULL, если файл для сообщений не требуется).

    • Направление копирования: DB_OUT.

  5. Вызовите bcp_control, установите eOption в значение BCPHINTS и разместите в iValue указатель к массиву SQLTCHAR, содержащему инструкцию SELECT.

  6. Чтобы выполнить операцию массового копирования, вызовите функцию bcp_exec.

При выполнении этих этапов создается файл в собственном формате. С помощью bcp_colfmt значения данных можно преобразовывать в другие типы данных. Дополнительные сведения см. в разделе Как создать файл форматирования массового копирования (ODBC).