IBCPSession::BCPColumns (OLE DB)

Задает количество полей, привязанных к столбцам в таблице SQL Server.

Синтаксис

  
HRESULT BCPColumns(   
DBCOUNTITEMnColumns);  

Замечания

Внутри него вызывается IBCPSession::BCPColFmt , чтобы задать значения по умолчанию для данных поля. Эти значения по умолчанию получены из данных столбца SQL Server, которые поставщик внутренне извлекает при указании имени таблицы через IBCPSession::BCPInit.

Замечание

Этот метод можно вызывать только после вызова BCPInit с допустимым именем файла.

Этот метод следует вызывать только в том случае, если вы планируете использовать формат пользовательского файла, который отличается от используемого по умолчанию. Дополнительные сведения о формате пользовательского файла по умолчанию см. в методе BCPInit .

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

Аргументы

nColumns[in]
Общее количество полей в пользовательском файле. Даже если вы готовитесь к массовому копированию данных из пользовательского файла в таблицу SQL Server и не планируете копировать все поля в пользовательском файле, необходимо по-прежнему задать для аргумента nColumns общее количество полей пользовательского файла. Затем пропущенные поля можно указать через BCPColFmt.

Значения кода возврата

S_OK
Метод выполнен успешно.

E_FAIL
Произошла ошибка конкретного поставщика; для получения подробных сведений используйте интерфейс ISQLServerErrorInfo .

E_UNEXPECTED
Вызов метода был непредвиденным. Например, метод BCPInit не был вызван перед вызовом этого метода. Также возникает, когда этот метод вызывается несколько раз для операции массового копирования.

E_OUTOFMEMORY (Ошибка: Недостаточно памяти)
Ошибка вне памяти.

См. также

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