If a cursor is created on a system stored procedure that returns schema information from a remote server, a handled access violation may occur in the XdesRMReadOnly::Init function causing only that client's connection to SQL Server to be terminated.
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 theMicrosoft Knowledge Base:
290211 INF: How to Obtain the Latest SQL Server 2000 Service Pack
NOTE: The following hotfix was created prior to Microsoft SQL Server 2000 Service Pack 2.
The English version of this fix should have the following file attributes or later:
File name Platform ----------------------------------------------------------- s80303i.exe x86 - SQL Server 2000 original release fix s80426i.exe x86 - SQL Server Service Pack 1 fix
NOTE: Due to file dependencies, the most recent hotfix or feature that contains the above files may also contain additional files.
Do not attempt to create cursors on the system stored procedures listed in the "More Information" section.
Microsoft has confirmed that this is a problem in SQL Server 2000. This problem was first corrected in Microsoft SQL Server 2000 Service Pack 2.
This problem can occur when the cursor is created on the following system stored procedures:
With the hotfix applied, SQL Server now returns the following error messages:
Server: Msg 16955, Level 16, State 2, Line 0 Could not create an acceptable cursor.
Server: Msg 16945, Level 16, State 1, Procedure sp_cursoropen, Line 57 The cursor was not declared.
Here are the first 13 functions from the short stack dump reported in the SQL Server error log file from the original released version of SQL Server 2000 (8.00.194):