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

   今天一个同事突然告诉我,以前跑得很正常的一个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 输出了错误信息,请与系统管理员联系。

时间: 2025-01-02 12:09:20

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

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

原文:SQL Server 2008空间数据应用系列十一:提取MapInfo地图数据中的空间数据解决方案友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Server 2008 R2调测. 2.具备 Transact-SQL 编程经验和使用 SQL Server Management Studio 的经验. 3.熟悉或了解Microsoft SQL Server 2008中的空间数据类型. 4.具备相应(比如OGC规范.KML规范)的GIS专业理论知识. 5.

Red5应用程序执行过程中遇到的错误

问题描述 我的服务器端应用程序完成下面的功能测试Demo:1.循环监听数据库,30分钟查询一次2.手动初始化数据库报警信息为1(也可以不用手动初始化,程序课自动初始化)3.查询到报警信息为1.启动视频流录制函数,录制15分钟的视频(由客户端不间断推送),录制完后将数据库中报警信息置为0:4.查询到报警信息为0,自动将报警信息置为1,30分钟后查到为1的时候可自动录制视频 客户端连接应用程序,应用程序执行过程中打印到Red5-service.log中的问题如下:INFO|jvm1|2013/01/

安装sql server 2008 报错等问题怎么解决

  问题1:安装sql server 2008 R2,安装过程中提示错误:此计算机上安装了 Microsoft Visual Studio 2008 的早期版本.请在安装 SQL Server 2008 前将 Microsoft Visual Studio 2008 升级到 SP1. 之前我的电脑上确实装了vs2008,于是我准备去下载一个SP1补丁包,一看800多M的大小,本来安装这个软件就已经很麻烦了,还得花时间下载,那有没有其他更好的办法呢?其实很简单,只需要改一下注册表即可,方法如下:

《数据库基础及实践技术——SQL Server 2008》一2.5 SQL Server Management Studio工具

2.5 SQL Server Management Studio工具 SQL Server Management Studio是SQL Server 2008中最重要的管理工具之一,使用这个工具既可以用图形化的方法,也可以通过编写SQL语句来实现对数据库的操作. SQL Server Management Studio是一个集成环境,用于访问.配置和管理所有的SQL Server组件,它组合了大量的图形工具和丰富的脚本编辑器,使技术水平不同的开发和管理人员都可以通过这个工具访问和管理SQL Se

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

原文:SQL Server 2008空间数据应用系列二:空间索引(Spatial Index)基础 在前一篇博文中我们学习到了一些关于地理信息的基础知识,也学习了空间参照系统,既地球椭球体.基准.本初子午线.计量单位.投影等相关理论知识,我们可以使用这些空间参照系统组件来定义一系列应用于地球空间上的几何图像来表示地理空间中的特定功能,表示着地球上一个一个特定的位置点. 本篇主要介绍地理空间索引的概念以及微软SQL Server 2008 R2中的空间索引的应用.   一.空间索引 空间索引是指依

《数据库基础及实践技术——SQL Server 2008》一2.2 安装SQL Server 2008

2.2 安装SQL Server 2008 同其他微软公司产品一样,微软公司也为SQL Server 2008的安装过程提供了一个友好的安装向导,利用该向导可以很方便地安装软件.我们以在Windows XP+SP2操作系统上安装SQL Server 2008企业试用版为例,说明SQL Server 2008的安装过程及安装过程中的选项.在其他Windows操作系统平台上的安装过程与此类似.1)将包含SQL Server 2008软件的光盘插入光驱后,系统将自动启动SQL Server 2008的

SQL Server 2008的Transact-SQL语言增强

Microsoft SQL Server 2008 对 Transact-SQL 语言进行了进一步增强,主要包括:ALTER DATABASE 兼容级别设置.复合运算符.CONVERT 函数.日期和时间功能.GROUPING SETS.MERGE 语句.SQL 依赖关系报告.表值参数和 Transact-SQL 行构造函数. 1.ALTER DATABASE 兼容级别设置 某些数据库行为与 SQL Server 版本有关,通过 ALTER DATABASE 下面新增的语法,可以设置数据库兼容级别

让SQL Server 2008 R2在查询时输出信息

环境:SQLServer 2008 R2 问题:在查询时输出信息 解决: 一:使用print函数. 如: print 'HelloWorld'; 当然,print函数不仅能够打印字符串,还可以打印整型数据或者浮点型数据. 如: print 27; print 39.27; print 0.11111111111111111111; 二:变通的方法,通过系统表查询获得输出信息. select * from sysobjects; select 'HelloWorld' from sysobject

详解SQL Server 2008迁移查询计划

大多数情况下,将数据库升级到 SQL Server 2008 会提高查询性能. 但是,如果您具有已针对性能进行过认真优化的任务关键查询,在升级前最好为每个查询创建一个计划指南,以保留这些查询的查询计划. 如果在升级后,查询优化器为一个或多个查询选择了效率较低的计划,则可以启用这些计划指南并强制查询优化器使用升级前的计划. 若要在升级前创建计划指南,请按照以下步骤执行操作: 通过使用 sp_create_plan_guide 存储过程并在 USE PLAN 查询提示中指定查询计划来记录每个任务关键