If you run a query that tries to update a derived table that contains a UNION statement, a handled Access Violation occurs and the connection is closed. For example, the following query: 
declare @x int
update t
set @x = coalesce( @x , 0 ) + n
from ( select 1 union all select 2 union all select 3 ) as t( n ) 
returns this 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.Connection Broken 
希望对你有帮助

解决方案 »

  1.   

    MSDN说还有一个原因, T-SQL Query with an expression having many operands calling the ISNULL System Function may cause a handled Access Violation (AV) for the connection.
      

  2.   

    感谢leimin(leimin) 答复
    我去试试看
      

  3.   

    A SELECT statement using DISTINCT that contains a large negative integer value in a condition of the WHERE clause can result in a handled access violation (AV). 你看一下這個
      

  4.   

    安装SQL时你的用户数是多少?实际用户数是?
      

  5.   

    困扰我半个月没有睡好觉的问题终于能得以解决,心中终于爽了一把。该问题最终还是MS SQLServer中的BUG,大家如果遇到类似的问题请到MS的主页上下载一个SQLServer的补丁就可以解决
    http://www.microsoft.com/sql/downloads/2000/sp1.asp这是补丁一,还有一个补丁二这个我没有具体看它解决了哪些BUG,但在补丁一中它明确说明了修补了我遇到的问题
    我也是找了好久才找到的:((
    呵呵,没有功劳也有苦劳!!
    各位在使用SQLServer中一定要升级你的sqlserver。