在SQL2000里查询个表里,出现错误提示:
[Microsoft][ODBC  SQL  Server  Driver][Shared  Memory]ConnectionCheckForData  (CheckforData()).  
然后SQL就自动关掉了,重启SQL可以重复用,有时候需要重启系统才可以。另外,这个表直接打开的时候,往下滚动到一定行时,出现错误提示:
[Microsoft][ODBC SQL Server Driver][SQL Server]SqlDumpExceptionHandler:进程52发生了严重的异常c0000005 EXCEPTION_ACCESS_VIOLATION.SQL Server将终止该进程。
然后SQL就好像死掉了,要重启系统才可以用。

解决方案 »

  1.   

    DBCC CheckDB 检查一下库的正常情况
    和检查一下表
    DBCC CheckTable
      

  2.   

    检查表里出现下面的提示:
    服务器: 消息 8928,级别 16,状态 1,行 1
    对象 ID 2061250398,索引 ID 0: 未能处理页 (1:16989)。详细信息请参阅其它错误。
    服务器: 消息 8944,级别 16,状态 1,行 1
    表错误: 对象 ID 2061250398,索引 ID 0,页 (1:16989),行 29。测试(columnOffsets->offTbl [varColumnNumber] >= priorOffset)失败。值为 181 和 235。
    'Proofm' 的 DBCC 结果。
    对象 'Proofm' 有 301679 行,这些行位于 10375 页中。
    CHECKTABLE 发现了 0 个分配错误和 2 个一致性错误(在表 'Proofm' 中,该表的对象 ID 为 2061250398)。
    repair_allow_data_loss 是最低的修复级别(对于由 DBCC CHECKTABLE (HL.dbo.Proofm ) 发现的错误而言)。进一步请教
      

  3.   

    --修复:
    DBCC CHECKTABLE (HL.dbo.Proofm , repair_allow_data_loss)
      

  4.   

    CHECKTABLE 发现了 0 个分配错误和 2 个一致性错误(在表 'Proofm' 中,该表的对象 ID 为 2061250398)。
    repair_allow_data_loss 是最低的修复级别(对于由 DBCC CHECKTABLE (HL.dbo.Proofm ) 发现的错误而言)。
    -------------------------------------------------------------
    这个检查结果已经提示你应该做什么样的操作了.
      

  5.   

    按提示修复时又出错误:
    修复语句:DBCC CHECKTABLE (‘Proofm’ , repair_allow_data_loss)错误提示:服务器: 消息 7102,级别 20,状态 7,行 1
    SQL Server 内部错误。文本管理器无法继续执行当前语句。连接中断
      

  6.   

    1、首先检查网络。2、然后用DBCC CheckDB检查数据库。3、如果以上都没有问题,可能就是数据库中数据太大了。最近遇到过这个问题,就是因为数据库中有些表数据量太大了,导致提示这个错误。分析:可能是因为数据量太大,导致内存不够,从而频繁的和硬盘进行数据交换,当达到某个极限时,提示错误。