如果DBCC CHECKDB发现了比较少的一致性错误,可以使用   DBCC UPDATEUSAGE(DatabaseName,"dbo.ObjectName"); 语句逐个针对表或索引中的每个分区更正行、已用页、保留页、叶级页和数据页的计数。但是如果数据库出现大量一致性错误。例如如下所示:

DBCC results for 'JO_T_CUTXX'.

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

The In-row data USED page count for object "JO_T_CUTXX", index ID 2, partition ID 626692535091200, alloc unit ID 626692535091200 (type In-row data) is incorrect. Run DBCC UPDATEUSAGE.

消息 2508,级别 16,状态 3,第 1 行

The In-row data RSVD page count for object "JO_T_CUTXX", index ID 2, partition ID 626692535091200, alloc unit ID 626692535091200 (type In-row data) is incorrect. Run DBCC UPDATEUSAGE.

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

The In-row data USED page count for object "JO_T_CUTXX", index ID 3, partition ID 908167511801856, alloc unit ID 908167511801856 (type In-row data) is incorrect. Run DBCC UPDATEUSAGE.

消息 2508,级别 16,状态 3,第 1 行

The In-row data RSVD page count for object "JO_T_CUTXX", index ID 3, partition ID 908167511801856, alloc unit ID 908167511801856 (type In-row data) is incorrect. Run DBCC UPDATEUSAGE.

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

The In-row data USED page count for object "JO_T_CUTXX", index ID 4, partition ID 1189642488512512, alloc unit ID 1189642488512512 (type In-row data) is incorrect. Run DBCC UPDATEUSAGE.

消息 2508,级别 16,状态 3,第 1 行

The In-row data RSVD page count for object "JO_T_CUTXX", index ID 4, partition ID 1189642488512512, alloc unit ID 1189642488512512 (type In-row data) is incorrect. Run DBCC UPDATEUSAGE.

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

The In-row data USED page count for object "JO_T_CUTXX", index ID 5, partition ID 1471117465223168, alloc unit ID 1471117465223168 (type In-row data) is incorrect. Run DBCC UPDATEUSAGE.

消息 2508,级别 16,状态 3,第 1 行

The In-row data RSVD page count for object "JO_T_CUTXX", index ID 5, partition ID 1471117465223168, alloc unit ID 1471117465223168 (type In-row data) is incorrect. Run DBCC UPDATEUSAGE.

There are 0 rows in 0 pages for object "JO_T_CUTXX".

CHECKDB found 0 allocation errors and 8 consistency errors in table 'JO_T_CUTXX' (object ID 972634608).

....................................................................................

....................................................................................

....................................................................................

那么逐个语句去将目录视图中的页数和行数错误进行更正就显得有点低效和枯燥。如果数据库不大,你想对全部表执行以下该语句,那么可以使用下面语句:(当然更新统计信息语句不是必须的,为了确保系统视图、表信息正确性,有必要先收集、更新一下统计信息)

Code Snippet
  1. USE master
  2. GO
  3. EXEC sp_MSforeachdb@command1="print '?' EXEC [?].dbo.sp_updatestats"
  4. USE master
  5. GO
  6. EXEC sp_MSforeachdb@command1="print '?' DBCC UPDATEUSAGE (?)"

缺点是会对所有对象执行一次DBCC UPDATEUSAGE,如果数据库比较大,这个脚本执行起来就比较慢了。

SQL SERVER出现大量一致性错误的解决方法的更多相关文章

  1. SQL Server 导出Excel有换行的解决方法

    参考地址::https://vcoo.cc/blog/1234/ 从 SQL Server 查询结果中复制结果数据粘贴到 Excel 中存在这么个问题:如果字段内容中有换行符,那么粘贴到 Excel ...

  2. 【SQL Server】SQL Server占用CPU使用率100%的解决方法

    原文:[SQL Server]SQL Server占用CPU使用率100%的解决方法 近日,帮一个客户解决了服务器CPU占用率高达100%的问题. 以前做的一个某污水处理厂自控系统项目,客户反映其自控 ...

  3. SQL Server 2008R2 :远程调用失败 的解决方法(全部方法)

    SQL 中远程调用失败的原因 1.服务里面的启动权限未能启动,修改sql对应的服务进程权限就可以了 2.是因为VS 和SQL 起冲突了,数据库找不到访问地址导致的.解决的办法很简单,就是卸载掉多余的版 ...

  4. Sql Server 2008 数据库18456错误怎么解决?

    可以windows连接,以前都可以,昨天突然就不可以用SQL连接,报18456错误. 1.以windows验证模式进入数据库管理器. 2.右击sa,选择属性: 在常规选项卡中,重新填写密码和确认密码( ...

  5. SQL Server 2014连接不到服务器解决方法

    多半是不小心使用qq管家之类软件加速系统时把SQL Server(MSSSQL)不小心关闭了 解决方法如下(以WIN8为例):

  6. SQL Server 2005 不允许远程连接解决方法

    刚刚安装的数据库系统,按照默认安装的话,很可能在进行远程连接时报错,通常是错误:“在连接到 SQL Server 2005 时,在默认的设 置下 SQL Server 不允许进行远程连接可能会导致此失 ...

  7. SQL Server 占用CPU较高的解决方法

    触发原因:月底系统结账的时候对ERP的操作较多,有用户反馈系统之间的数据传输很久没有同步.随即到服务器上查看,没有发现有程序导致的问题,看了一下CPU的使用率,发现SQL Server占用率在百分之九 ...

  8. SQL Server 2008 评估期已过解决方法

    SQL Server 2008有180天的试用期,过期后会提示“评估期已过”的提示. 1.进入SQL Server安装中心: 2.选择“维护”-“版本升级” 3.输入密钥: 其他的根据提示操作. 附S ...

  9. SQL Server 2005无法远程连接的解决方法

    以前一直连接本地的数据库,连接SQL Server 2005是小菜的... 做项目也是老师搭好了服务器端,打上IP去访问就行...也不用考虑太多. 今天自己在公司搭SQL Server 2005服务器 ...

随机推荐

  1. 如何在程序中给word文档加上标和下标

    如何在程序中给word文档加上标和下标 上标或下标是一个小于普通行格式的数字,图形,标志或者指示通常它的设置与行相比偏上或偏下.下标通常显示于或者低于基准线,而上标则高于.上标和下标通常被用于表达公式 ...

  2. 关于Java中的static关键字

    Java中的 static 关键字,确实是一个关键的字(key word),今天就来总结一下它的用法,说说为什么关键. Java中的 static 关键字主要是用来做内存管理的.理解了这句话才能够比较 ...

  3. 关于Javascript作用域及作用域链的总结

    本文是根据以下文章以及<Javascript高级程序设计(第三版)>第四章相关内容总结的. 1.Javascript作用域原理,地址:http://www.laruence.com/200 ...

  4. JS实现动态显示当前时间

    效果图: 代码实现: <script language="JavaScript"> var timerID = null; var timerRunning = fal ...

  5. 【JS】heatmap.js v1.0 到 v2.0,详细总结一下:)

    前段时间,项目要开发热力图插件,研究了heatmap.js,打算好好总结一下. 本文主要有以下几部分内容: 部分源码理解 如何迁移到v2.0 v2.0官方文档译文 关于heatmap.js介绍,请看这 ...

  6. DX9入门笔记1-D3D初始化

    对3D编程期待已久,却一直叶公好龙浅尝辄止.近期在公司实习却无具体的工作安排,琢磨着学习个新的手艺,就又想起了3D Programming.这次从大名鼎鼎的龙书(Introduction to 3D ...

  7. Struts2 源码分析——配置管理之ContainerProvider接口

    本章简言 上一章笔者讲到关于Dispatcher类的执行action功能,知道了关于执行action需要用到的信息.而本章将会讲到的内容也跟Dispatcher类有关系.那就是配置管理中的Contai ...

  8. GO语言面向对象

    当初开发go语言的时候就是因为C++的特性太过于繁杂,从而使得很多C++的开发者因为C++的特性而头疼,go语言成功的精简了C++的特性,使其很简洁,很少的特性,却可以完成很多的事情. go语言中并没 ...

  9. sed命令使用详解归纳

    用法 sed [option] 'Address Command' yourfile e.g. sed -n '2,13p' lineuser #打印文件lineuser中第2~13行的内容,-n为o ...

  10. web.config配置

    <appSettings> <add key="DepartmentRootID" value="A90AEAEC-E3D4-43DE-BB67-854 ...