Microsoft KB Archive/236044

= FIX: Java OLE DB Simple Provider Crashes in Recordset.Delete Method =

Article ID: 236044

Article Last Modified on 5/17/2007

-

APPLIES TO


 * Microsoft Data Access Components 2.1 Service Pack 2
 * Microsoft Data Access Components 2.5
 * OLE DB Simple Provider Toolkit 2.0
 * Microsoft Visual J++ 6.0 Standard Edition
 * Microsoft Data Access Components Software Development Kit 2.1
 * Microsoft Data Access Components Software Development Kit 2.0
 * Microsoft Data Access Components Software Development Kit 2.0

-



This article was previously published under Q236044



SYMPTOMS
When using the OLE DB Simple Provider for Java, and when using the Recordset.Delete method, the following errors occur depending on the language that the recordset is used from:

In Visual C++
Unhandled exception in  (MSDAOSP.DLL): 0xC0000005: Access Violation

In Visual Basic or Visual J++
The instruction at " " referenced memory at "0x00000000". The memory could not be "read".



CAUSE
This error is caused by an attempt to use an invalid rowset interface within DeleteRowsetHelper.



RESOLUTION
This problem has been fixed with Microsoft Data Access Components (MDAC) 2.1 Service Pack 2 (SP2). You can the latest download MDAC from the following Microsoft Universal Data Access Web site:

http://msdn2.microsoft.com/en-us/data/aa937695.aspx



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



MORE INFORMATION
The new release of MDAC also fixes a reference counting problem in the Java OLE DB Simple Provider, which causes unpredictable results and access violation errors (refer to the article in the References section).

