Compartir a través de


IBCPSession::BCPColumns (proveedor OLE DB de Native Client)

Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Importante

SQL Server Native Client (a menudo abreviado SNAC) se ha quitado de SQL Server 2022 (16.x) y SQL Server Management Studio 19 (SSMS). Para nuevos trabajos de desarrollo, no se recomiendan ni el proveedor OLE DB de SQL Server Native Client (SQLNCLI o SQLNCLI11) ni el proveedor OLE DB de Microsoft para SQL Server (SQLOLEDB) heredado. Cambie al nuevo Controlador Microsoft OLE DB para SQL Server de ahora en adelante.

Establece el número de campos que van a enlazarse a las columnas en una tabla de SQL Server .

Sintaxis

  
HRESULT BCPColumns(   
      DBCOUNTITEM nColumns);  

Observaciones

Llama a IBCPSession::BCPColFmt internamente para establecer los valores predeterminados de los datos de campo. Estos valores predeterminados se obtienen de la información de columna de SQL Server que el proveedor recupera internamente cuando el nombre de tabla se especifica a través de IBCPSession::BCPInit.

Nota:

Se puede llamar a este método solamente después de que se haya llamado a a BCPInit con un nombre de archivo válido.

Solo debe llamar a este método si piensa utilizar un formato de archivo de usuario que difiere del valor predeterminado. Para obtener más información sobre una descripción del formato predeterminado del archivo de usuario, vea el método BCPInit .

Después de llamar al método BCPColumns , debe llamar al método BCPColFmt para cada columna en el archivo de usuario para definir completamente un formato de archivo personalizado.

Argumentos

nColumns[in]
El número total de campos en el archivo de usuario. Aun cuando está preparando para realizar copias masiva de datos del archivo de usuario a una tabla SQL Server y no piensa copiar todos los campos en el archivo de usuario, todavía debe establecer el argumento nColumns en el número total de campos de archivo de usuario. Los campos omitidos se pueden especificar a continuación a través de BCPColFmt.

Valores de código de retorno

S_OK
El método se ha llevado a cabo de forma correcta.

E_FAIL
Se produjo un error específico del proveedor; para obtener información detallada, use la interfaz ISQLServerErrorInfo.

E_UNEXPECTED
No se esperaba la llamada al método. Por ejemplo, no se llamó al método BCPInit antes de llamar a este método. También se produce cuando se llama a este método más de una vez para una operación de copia masiva.

E_OUTOFMEMORY
Error de memoria insuficiente.

Consulte también

IBCPSession (OLE DB)
Realizar operaciones de copia masiva