FIX: "Numeric Value Out Of Range" Error Message When You Execute Batch SQL Statements (313352)



The information in this article applies to:

  • Microsoft ODBC Driver for SQL Server 2000 2000.80.380
  • Microsoft ODBC Driver for SQL Server 2000 2000.80.194

This article was previously published under Q313352

SYMPTOMS

If you call a batch of two or more Microsoft SQL Server stored procedures by using the ODBC Driver for SQL Server and by using the ODBC canonical {call X} method, you may receive the following error message from the driver:
Numeric Value Out Of Range
The corresponding SQLState for this error message is SQLState 22003.

RESOLUTION

To resolve this problem, obtain the latest service pack for Microsoft SQL Server 2000. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

290211 INF: How to Obtain the Latest SQL Server 2000 Service Pack

The English version of this fix has the file attributes (or later) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.
   Date         Time   Version        Size     File Name
   -------------------------------------------------------------
   21-Dec-2001  19:33  2000.81.8221.0  24,576  Odbcbcp.dll
   21-Dec-2001  19:32  2000.81.8221.0 385,024  Sqlsrv32.dll
   27-Aug-2001  18:07  2000.81.7713.0  90,112  Sqlsrv32.rll
   11-Feb-2002  23:40  6.0.2600.0     314,368  Q313352_mdac27_x86_en.exe
				

STATUS

Microsoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article. This problem was first corrected in Microsoft SQL Server 2000 Service Pack 3.

MORE INFORMATION

This error occurs if the following circumstances are true:
  • You run a batch of two or more SQL statements.
  • You use the ODBC canonical method of calling stored procedures (the "{call X}" method).
  • You bind the first parameter by using the SQLBindParameter function, you use a variable length data type such SQL_BINARY or SQL_VARCHAR, and you set the length of the parameter to zero (0) bytes.

Modification Type:MajorLast Reviewed:4/7/2006
Keywords:kbQFE KBHotfixServer kbSQLServ2000sp3fix kbbug kbfix kbSQLServ2000preSP3fix KB313352