FIX: CCommand::Open() Fails with SQL Server 7.0 and LARGE_INTEGER (242522)



The information in this article applies to:

  • Microsoft Data Access Components 2.1
  • Microsoft OLE DB Provider for SQL Server 7.01

This article was previously published under Q242522

SYMPTOMS

While performing a CCommand::Open on a stored procedure with a LARGE_INTEGER as an input parameter, an ATL consumer receives an HRESULT of E_FAIL and the SQL Server crashes.

CAUSE

The ATL consumer converts a LARGE_INTEGER data type to an OLE DB DBTYPE_I8 data type. This data type is not supported as an input parameter to a SQL Server 7.0 stored procedure in the Microsoft OLE DB Provider for SQL Server (3.70.06.90) that ships with Microsoft Data Access Components (MDAC) 2.1 Service Pack 2 (SP2).

RESOLUTION

To work around this problem, use the DB_NUMERIC data type instead of a LARGE_INTEGER.

STATUS

Microsoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article.

Modification Type:MajorLast Reviewed:10/17/2003
Keywords:kbBug kbfix kbMDAC250fix kbMDACNoSweep KB242522