Microsoft KB Archive/839523

= FIX: An access violation exception may occur when you update a text column by using a stored procedure in SQL Server 2000 =

Article ID: 839523

Article Last Modified on 11/2/2007

-

APPLIES TO


 * Microsoft SQL Server 2000 Developer Edition
 * Microsoft SQL Server 2000 Standard Edition
 * Microsoft SQL Server 2000 Enterprise Edition
 * Microsoft SQL Server 2000 Personal Edition
 * Microsoft SQL Server 2000 Enterprise Edition
 * Microsoft SQL Server 2000 Workgroup Edition
 * Microsoft SQL Server 2000 Desktop Engine (Windows)
 * Microsoft SQL Server 2000 Developer Edition
 * Microsoft SQL Server 2000 Enterprise Edition 64-bit

-





Microsoft distributes SQL Server 2000 fixes as one downloadable file. Because the fixes are cumulative, each new release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2000 fix release.



SYMPTOMS
An access violation exception may occur, and you may receive the following error message:

ODBC: Msg 0, Level 19, State 1

SqlDumpExceptionHandler: Process 51 generated fatal exception c0000005

EXCEPTION_ACCESS_VIOLATION. SQL Server is terminating this process.

This problem occurs when a table has an INSTEAD OF trigger defined on it, and you try to update a text column in the table by using a stored procedure.



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

290211 How to obtain the latest SQL Server 2000 service pack

Hotfix information
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 31-May-2003 05:15  2000.80.818.0      78,400  Console.exe 27-Oct-2003 14:51  2000.80.873.0     315,968  Custtask.dll 30-Jan-2004 02:59  2000.80.911.0      33,340  Dbmslpcn.dll 24-Apr-2003 12:42                    786,432  Distmdl.ldf 24-Apr-2003 12:42                  2,359,296  Distmdl.mdf 29-Jan-2003 12:25                        180  Drop_repl_hotfix.sql 11-Sep-2003 13:56  2000.80.859.0   1,905,216  Dtspkg.dll 26-Aug-2003 06:46  2000.80.854.0     528,960  Dtspump.dll 23-Jun-2003 09:10  2000.80.837.0   1,557,052  Dtsui.dll 23-Jun-2003 09:10  2000.80.837.0     639,552  Dtswiz.dll 23-Apr-2003 13:21                    747,927  Instdist.sql 02-May-2003 12:26                      1,581  Inst_repl_hotfix.sql 30-Jan-2004 02:59  2000.80.911.0      90,692  Msgprox.dll 31-Mar-2003 12:37                      1,873  Odsole.sql 30-Jan-2004 02:59  2000.80.911.0      62,024  Odsole70.dll 30-Jan-2004 02:59  2000.80.911.0      25,144  Opends60.dll 30-Jan-2004 02:59  2000.80.911.0      57,904  Osql.exe 02-Apr-2003 09:45  2000.80.797.0     279,104  Pfutil80.dll 04-Aug-2003 04:47                    550,780  Procsyst.sql 11-Sep-2003 11:07                     12,305  Qfe469315.sql 22-May-2003 09:27                     19,195  Qfe469571.sql 29-Jan-2004 11:47                  1,090,380  Replmerg.sql 30-Jan-2004 02:59  2000.80.911.0     221,768  Replprov.dll 30-Jan-2004 02:59  2000.80.911.0     307,784  Replrec.dll 29-Jan-2004 09:54  2000.80.911.0     159,813  Replres.rll 05-Sep-2003 10:30                  1,087,150  Replsys.sql 13-Aug-2003 02:58                    986,603  Repltran.sql 30-Jan-2004 02:59  2000.80.911.0     287,304  Rinitcom.dll 30-Jan-2004 02:59  2000.80.911.0      57,916  Semnt.dll 29-Jul-2003 06:43  2000.80.819.0     492,096  Semobj.dll 31-May-2003 04:57  2000.80.818.0     172,032  Semobj.rll 02-Jan-2004 06:12  2000.80.904.0      53,832  Snapshot.exe 09-Dec-2003 06:37                    117,834  Sp3_serv_uni.sql 04-Feb-2004 11:16  2000.80.913.0      28,672  Sqlagent.dll 04-Feb-2004 11:17  2000.80.913.0     311,872  Sqlagent.exe 19-Feb-2004 04:32  2000.80.916.0     168,001  Sqlakw32.dll 11-Mar-2004 15:04  2000.80.923.0      33,344  Sqlctr80.dll 30-Jan-2004 02:59  2000.80.911.0   4,215,360  Sqldmo.dll 07-Apr-2003 04:14                     25,172  Sqldumper.exe 29-Jan-2004 09:47  2000.80.911.0      28,672  Sqlevn70.rll 05-Mar-2004 03:43  2000.80.922.0     180,792  Sqlmap70.dll 02-Sep-2003 13:26  2000.80.857.0     188,992  Sqlmmc.dll 02-Sep-2003 09:33  2000.80.857.0     479,232  Sqlmmc.rll 21-Oct-2003 10:38  2000.80.871.0     401,984  Sqlqry.dll 30-Jan-2004 02:59  2000.80.911.0      57,920  Sqlrepss.dll 17-Mar-2004 09:24  2000.80.926.0   7,618,641  Sqlservr.exe 30-Jan-2004 02:59  2000.80.911.0     590,396  Sqlsort.dll 30-Jan-2004 02:59  2000.80.911.0      45,644  Sqlvdi.dll 30-Jan-2004 02:59  2000.80.911.0     106,588  Sqsrvres.dll 30-Jan-2004 02:59  2000.80.911.0      33,340  Ssmslpcn.dll 30-Jan-2004 02:59  2000.80.911.0      82,492  Ssnetlib.dll 30-Jan-2004 02:59  2000.80.911.0      25,148  Ssnmpn70.dll 27-Oct-2003 14:51  2000.80.873.0     123,456  Stardds.dll 30-Jan-2004 02:59  2000.80.911.0     158,240  Svrnetcn.dll 30-Jan-2004 02:59  2000.80.911.0      76,416  Svrnetcn.exe 30-Apr-2003 10:22  2000.80.816.0      45,132  Ums.dll 30-Jan-2004 02:59  2000.80.911.0      98,872  Xpweb70.dll Note Because of file dependencies, the most recent hotfix or feature that contains these files may also contain additional files.



WORKAROUND
To work around this problem, do not use a stored procedure to update a text column in a table.



STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the &quot;Applies to&quot; section.

This problem was first corrected in Microsoft SQL Server 2000 Service Pack 4.



MORE INFORMATION
After you receive the access violation exception, you may notice the following short stack dump in the SQL Server error log file. * Short Stack Dump
 * 006BB3B3 Module(sqlservr+002BB3B3) (CXVariant::ClearDeep+00000044)
 * 0040AC09 Module(sqlservr+0000AC09) (CXVariant::Clear+0000000E)
 * 005EA40F Module(sqlservr+001EA40F) (CExecParamTbl::ResetTextParams+00000046)
 * 0041AE84 Module(sqlservr+0001AE84) (CMsqlExecContext::PostExec+00000024)
 * 0041BCE4 Module(sqlservr+0001BCE4) (CMsqlExecContext::Execute+0000039A)
 * 0041B315 Module(sqlservr+0001B315) (CSQLSource::Execute+00000357)
 * 004BDB5B Module(sqlservr+000BDB5B) (CStmtExec::XretLocalExec+0000014D)
 * 004BD9F7 Module(sqlservr+000BD9F7) (CStmtExec::XretExecute+0000031A)
 * 0041C613 Module(sqlservr+0001C613) (CMsqlExecContext::ExecuteStmts+000003B9)
 * 0041BC86 Module(sqlservr+0001BC86) (CMsqlExecContext::Execute+00000205)
 * 0041B315 Module(sqlservr+0001B315) (CSQLSource::Execute+00000357)
 * 00489D73 Module(sqlservr+00089D73) (language_exec+000003E1)
 * 004298A6 Module(sqlservr+000298A6) (process_commands+0000010E)
 * 41072838 Module(UMS+00002838) (ProcessWorkRequests+00000272)
 * 410725B3 Module(UMS+000025B3) (ThreadStartRoutine+00000098)
 * 77C37E53 Module(MSVCRT+00027E53) (endthread+000000AA)
 * 77E7D33B Module(kernel32+0001D33B) (RegisterWaitForInputIdle+00000043)

