FIX: AV Error Using Temp Table and Cursor in Stored Procedure

ID: Q153987


The information in this article applies to:


SYMPTOMS

A stored procedure that performs selects against a cursor with a temporary table in the cursor will fail with an access violation or with the following error message:

Msg 208 "Invalidobject name #temptable"

The problem will only occur after SQL Server has been shut down and restarted after the initial creation of the stored procedure. If the stored procedure is then dropped and re-created, it will work again until SQL Server is shut down and restarted.


CAUSE

On recompile of the stored procedure, the temporary tables are not being resolved properly if they are being invoked from inside a cursor.


WORKAROUND

The problem only occurs if both the temporary table and the cursor are both created inside a stored procedure. Creating the temporary table outside of the stored procedure will allow the stored procedure to function correctly. An alternative workaround would be to convert the temporary table to a permanent table.


STATUS

Microsoft has confirmed this to be a problem in Microsoft SQL Server version 6.5. This problem has been corrected in U.S. Service Pack 1 for Microsoft SQL Server version 6.5. For more information, contact your primary support provider.


Keywords          : kbnetwork SSrvStProc kbbug6.50 kbfix6.50.sp1 
Version           : 6.5
Platform          : WINDOWS 
Issue type        : 

Last Reviewed: April 1, 1999