今天一个同事突然告诉我,以前跑得很正常的一个SQL语句,执行时突然报如下错误:

        消息1222,级别16,状态18,第1 行

        已超过了锁请求超时时段。

        消息8630,级别16,状态1,第1 行

        内部查询处理器错误: 查询处理器在执行过程中遇到意外错误。

我执行了一下这个SQL语句,也是报如上错误,感觉有点奇怪,还是第一次遇到这种错误。我初步怀疑是SQL中某个表出现一致性错误或分配错误等原因造成。于是先用DBCC CHECKTABLE 依次检查每个表。DBCC CHECKTABLE用来检查组成表或索引视图的所有页和结构的完整性。结果还真的发现其中一个表有2个一致性错误。如下所示:

pbFabricWIP的 DBCC 结果。

消息 8951,级别 16,状态 1,第 1 行

表错误: 表 'pbFabricWIP' (ID 1254295528)。数据行在索引 'Current_Index' (ID 24)中没有匹配的索引行。与以下数据行匹配的索引行的键可能丢失或无效:

消息 8955,级别 16,状态 1,第 1 行

数据行(1:31937:26)由(HEAP RID = (1:31937:26))标识,索引值为 'Current_Department = 'FI' and Current_Operation = '待装单' and HEAP RID = (1:31937:26)'。

消息 8952,级别 16,状态 1,第 1 行

表错误: 表 'pbFabricWIP' (ID 1254295528)。索引 'Current_Index' (ID 24)中的索引行与任何数据行都不匹配。可能是以下行的多余或无效的键:

消息 8956,级别 16,状态 1,第 1 行

索引行(1:10613:16)的值为(Current_Department = 'FI' and Current_Operation = '待组板' and HEAP RID = (1:31937:26)),指向由(HEAP RID = (1:31937:26))标识的数据行。

对象 'pbFabricWIP' 的 7391 页中有 324059 行。

CHECKTABLE 在表 'pbFabricWIP' (对象 ID 1254295528)中发现 0 个分配错误和 2 个一致性错误。

对于由 DBCC CHECKTABLE (SystemDB.dbo.pbFabricWIP)发现的错误,repair_rebuild 是最低的修复级别。

DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。

 

于是接下来需要修复这个表的索引的一致性错误。使用DBCC DBREINDEX执行后,问题解决。

DBCC DBREINDEX('pbFabricWIP')

DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。

SQL SERVER 2008:内部查询处理器错误: 查询处理器在执行过程中遇到意外错误的更多相关文章

  1. SQL Server 2008空间数据应用系列十一:提取MapInfo地图数据中的空间数据解决方案

    原文:SQL Server 2008空间数据应用系列十一:提取MapInfo地图数据中的空间数据解决方案 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Serv ...

  2. SQL SERVER 2008安装时出现不能在控件上调用 Invoke 或 BeginInvoke错误 解决方法

    或者 SQL SERVER 2008安装时要求重启,但重启后仍要求重启.都可以使用此方法. 注册表的 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet ...

  3. SQL server 2008里面通过sys.dm_exec_procedure_stats得到存储过程的执行信息--转

    --转自:http://blogs.msdn.com/b/apgcdsd/archive/2011/05/13/sql-server-2008-sys-dm-exec-procedure-stats. ...

  4. Sql Server 2008 【存储过程】 死锁 查询和杀死

    1 . 使用数据库中,可能出现死锁, 导致程序 无法正常使用. Create procedure [dbo].[sp_who_lock] ( @bKillPID Bit=0 -- 0: 查询 1: 结 ...

  5. Sql Server 2008开发版(Developer Edition)过期升级企业版(Enterprise Edition)失败后安装学习版(Express Edition)

    最近一个多月,甚是悠哉,无事可做.上线的网站系统也没接到客户的反馈,反而觉得无聊之极了.上周五早上,一上QQ,就收到客户发来消息,管理平台无法登陆了.心里一惊,立马开始查找故障原因.翻看了系统日志,提 ...

  6. SQL SERVER技术内幕之6 集合查询

    1.定义 集合运算会对两个输入查询的结果集进行逐行比较,根据比较结果和所使用的集合运算来确定某一行是否应该包含在集合运算的结果中.因为集合运算是针对集合之间进行的计算,所以集合运算涉及的两个查询不能包 ...

  7. SQL Server 2008 转换为 SQL 2005 数据库 脚本生成

    Tips: 本文讨论如何把数据库从SQL Server 2008版本降低到2005,因为在本地开发是以SQL Server 2008 Express Edition版本进行的,而主机提供商现在提供的M ...

  8. 配置SQL Server 2008服务器

    怎么配置SQL Server 2008服务器_百度经验 http://jingyan.baidu.com/article/9faa7231a922c1473c28cb23.html 1.验证安装是否成 ...

  9. SQL Server 2008空间数据应用系列二:空间索引(Spatial Index)基础

    原文:SQL Server 2008空间数据应用系列二:空间索引(Spatial Index)基础 在前一篇博文中我们学习到了一些关于地理信息的基础知识,也学习了空间参照系统,既地球椭球体.基准.本初 ...

随机推荐

  1. dapper-dot-net用法及其扩展系列

    dapper-dot-net用法及其扩展系列 虽然已经一段时间没写.net了,但是昨天看了下dapper和Dapper-Extensions在github仍然有更新,他们的受欢迎程度可想而知.所以想把 ...

  2. C++基础知识

    基础知识 &&和||具有"短路"特性,特别是在第二个操作数有++或--时要注意. 显式类型转换 (类型说明符)表达式 //C风格的 类型说明符(表达式) //cpp ...

  3. 【集合框架】JDK1.8源码分析之HashMap & LinkedHashMap迭代器(三)

    一.前言 在遍历HashMap与LinkedHashMap时,我们通常都会使用到迭代器,而HashMap的迭代器与LinkedHashMap迭代器是如何工作的呢?下面我们来一起分析分析. 二.迭代器继 ...

  4. 10.Struts2连接数据库

    链接数据库的两种方式: 1.在Action中连接数据库 2.使用工具类连接数据库 1.在Action中连接数据库 源码文档目录如图所示: 1.建立数据库 数据库建立语句: create databas ...

  5. jQuery-1.9.1源码分析系列(十五) 动画处理

    首先需要有队列(queue)的基本知识.见上一章. a.动画入口jQuery.fn.animate函数执行流程详解 先根据参数调用jQuery.speed获取动画相关参数,得到一个类似如下的对象:并且 ...

  6. SQL Server 2016 SP1 标准版等同企业版?!

    上周微软发布了SQL Server的历史性公告:SQL Server 标准版的SP1提供你和企业版一样得功能.你不信的话?可以点击这里. 这改变了整个关系数据库市场,重重打击了Oracle.在今天的文 ...

  7. 让 select 的 option 标签支持事件监听(如复制操作)

    这标题,让option支持事件监听,应该不难的呀,有什么好讲的? 其实还是有的,默认在浏览器代码是无法直接对option标签进行操作的,不仅包括JS事件监听,还是CSS样式设置 查了一些资料,姑且认为 ...

  8. EC笔记,第一部分:4.确定对象初始化

    04.确定对象初始化 将对象初始化,C++反复无常,所以在使用前应该手动初始化 1.分清赋值与初始化 以下例子: class test{ public: int a; test(){ a=0;//赋值 ...

  9. Java初始化顺序

    package com.helei.init; class Log { public static String fatherStaticString(){System.out.println(&qu ...

  10. SpringMVC中的异常处理集锦

    1 描述 在J2EE项目的开发中,不管是对底层的数据库操作过程,还是业务层的处理过程,还是控制层的处理过程,都不可避免会遇到各种可预知的.不可预知的异常需要处理.每个过程都单独处理异常,系统的代码耦合 ...