BUG: BCP_EXEC Returns Incorrect Rows Affected on Failure

ID: Q136793

The information in this article applies to: BUG# NT: 11376 (4.21a)

SYMPTOMS

The bcp_exec API call of DB-Library returns the incorrect number of rows on an import if bcp_exec returns FAIL instead of SUCCESS.

The number of rows reported as imported depends on the version of Microsoft SQL Server you are using. For example, with Microsoft SQL Server version 6.0, if bcp_exec returns failure and 200 rows were actually imported with a batch size of 100 rows, bcp_exec will return that 300 rows were imported. With Microsoft SQL Server version 4.2x, if bcp_exec returns failure, bcp_exec will return around 42 million rows regardless of the number of rows actually imported.

WORKAROUND

If a batch size is set with bcp_control, which is less than the number of rows to import, you can count the number of times the DB-Library error 10050 occurs and multiply that by the batch size.

STATUS

Microsoft has confirmed this to be a problem in SQL Server versions 4.21a and 6.0. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.

Additional query words: sql6 dblib

Keywords          : kbprg SSrvProg SSrvTran_SQL kbbug4.21a kbbug6.00 
Version           : 4.21a 6.0
Platform          : WINDOWS

Last Reviewed: May 2, 1997