BUG: Bcp_bind Does Not Correctly Convert Real DBFLT4

ID: Q161351


The information in this article applies to:

BUG #: 16378 (Windows: 6.50)
BUG #: 15685 (Windows: 6.00)

SYMPTOMS

In SQL Server 6.0 (release version) the error message "Error 10016: Requested data-conversion does not exist" was generated when you attempted a bcp_bind of DBFLT4 to a real or float column in the database.

This problem only occurred if the column in the database contained the NULLABLE attribute, and the bcp_bind specified zero (0) for the type parameter.

With SQL Server 6.0 Service Pack 3 and later, float, numeric, and decimal values are correctly added to the database. However, the real data type fails under the conditions described above.

The pervious error message is no longer generated, but you now receive the following in the output error file:

#@ Row 1, Column 2: The row length exceeds SQL Server's maximum
allowable size. @# 1.0


CAUSE

Defaulting the program data type to the SQL Server data type results in comparing a DBFLT4 in the code to a NULLABLE data type, and the DB-Library conversion routines are not properly handling the conversion.

DB-Library fails to map and convert a DBFLT4 program variable to a nullable float value.


WORKAROUND

To work around this problem, specify SQLFLT4 for the bcp_bind type value.


STATUS

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

Additional query words: SP3 dblib db-lib dblibrary


Keywords          : kbusage SSrvDB_Lib SSrvProg kbbug6.50 kbbug6.00.sp3 
Version           : 6.0 SP3 6.5
Platform          : WINDOWS 
Issue type        : 

Last Reviewed: April 7, 1999