Export (0) Print
Expand All

bcp_readfmt

SQL Server 2000

bcp_readfmt

  New Information - SQL Server 2000 SP3.

Reads a data file format definition from the specified format file.

Syntax

RETCODE bcp_readfmt (
HDBC
hdbc,
LPCTSTR
szFormatFile );

Arguments

hdbc

Is the bulk copy-enabled ODBC connection handle.

szFormatFile

Is the path and file name of the file containing the format values for the data file.

Returns

SUCCEED or FAIL.

Remarks

After bcp_readfmt reads the format values, it makes the appropriate calls to bcp_columns and bcp_colfmt. There is no need for you to parse a format file and make these calls.

To persist a format file, call bcp_writefmt. Calls to bcp_readfmt can reference saved formats. For more information, see bcp_init.

Alternately, the bulk-copy utility (bcp) can save user-defined data formats in files that can be referenced by bcp_readfmt. For more information about the bcp utility and the structure of bcp data format files, see Using Format Files.

Note  The format file must have been produced by version 4.2 or later of the bcp utility.

Example
// Variables like henv not specified.
HDBC      hdbc;
DBINT      nRowsProcessed;

// Application initiation, get an ODBC environment handle, allocate the
// hdbc, and so on.
... 

// Enable bulk copy prior to connecting on allocated hdbc.
SQLSetConnectAttr(hdbc, SQL_COPT_SS_BCP, (SQLPOINTER) SQL_BCP_ON,
   SQL_IS_INTEGER);

// Connect to the data source, return on error.
if (!SQL_SUCCEEDED(SQLConnect(hdbc, _T("myDSN"), SQL_NTS, 
   _T(""), SQL_NTS, _T(""), SQL_NTS)))
   {
   // Raise error and return.
   return;
   }

// Initialize bulk copy. 
if (bcp_init(hdbc, _T("myTable"), _T("myData.csv"),
   _T("myErrors"),    DB_IN) == FAIL)
   {
   // Raise error and return.
   return;
   }

if (bcp_readfmt(hdbc, _T("myFmtFile.fmt")) == FAIL)
   {
   // Raise error and return.
   return;
   }

if (bcp_exec(hdbc, &nRowsProcessed) == SUCCEED)
   {
   printf("%ld rows copied to SQL Server\n", nRowsProcessed);
   }

// Carry on.
...

See Also

bcp_colfmt

bcp_columns

bcp_writefmt

Show:
© 2015 Microsoft