IBCPSession (Native Client OLE DB Provider)

Applies to: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Important

The SQL Server Native Client (often abbreviated SNAC) has been removed from SQL Server 2022 (16.x) and SQL Server Management Studio 19 (SSMS). Both the SQL Server Native Client OLE DB provider (SQLNCLI or SQLNCLI11) and the legacy Microsoft OLE DB Provider for SQL Server (SQLOLEDB) are not recommended for new development. Switch to the new Microsoft OLE DB Driver (MSOLEDBSQL) for SQL Server going forward.

The IBCPSession interface exposes support for SQL Server file-based bulk copy operations. The IBCPSession interface is exposed in the SQL Server Native Client OLE DB provider under the same level as Sessions. In the SQL Server Native Client OLE DB provider, data source objects are factories for Session objects, and bulk copy operations are specified in the connection property SSPROP_ENABLEBULKCOPY. In addition, the SSPROP_ENABLEFASTLOAD property should be set to true.

Calling the IDBCreateSession::CreateSession method will then result in the creation of a BulkCopySession object. All the file-based bulk copy methods exposed through the IBCPSession object are then callable with nearly similar signatures on this IBCPSession object's IBCPSession interface.

Note

The SQL Server Native Client OLE DB provider supports memory-based bulk copy operations through the IRowsetFastLoad interface.

For more information about using the SQL Server Native Client OLE DB provider for bulk copy operations, see Performing Bulk Copy Operations.

For a sample showing how to use the IBCPSession interface, see IBCPSession::BCPDone (OLE DB).

In This Section

Method Description
IBCPSession::BCPColFmt (OLE DB) Creates a binding between program variables and SQL Server columns.
IBCPSession::BCPColumns (OLE DB) Sets the number of fields that are to be bound to the columns in a SQL Server table.
IBCPSession::BCPControl (OLE DB) Sets the options for a bulk copy operation.
IBCPSession::BCPDone (OLE DB) Commits the remaining rows to be sent to SQL Server.
IBCPSession::BCPExec (OLE DB) Performs the bulk copy operation.
IBCPSession::BCPInit (OLE DB) Initializes the bulk copy structure, performs some error checking, verifies that the data and format file names are correct, and then opens them.
IBCPSession::BCPReadFmt (OLE DB) Reads format information for each column from the format file.
IBCPSession::BCPWriteFmt (OLE DB) Writes format information for each column to the format file.

See Also

Interfaces (OLE DB)