sql server修复系统表错误不匹配的问题
来源: 阅读:665 次 日期:2014-12-10 09:52:56
温馨提示: 小编为您整理了“sql server修复系统表错误不匹配的问题”,方便广大网友查阅!
<>修复系统表(表错误- 对象 id 2。text、ntext 或 image 节点(位于页 (1-875),槽 0,文本 id 177078272)与该节点位于页 (1-500),槽 14 处的引用不匹配)

修复数据库,应该是一个再熟悉不过的“陌生”东东了。以往修复就使用一般的修复语句即可,今天遇到一个顽固不化的错误,nnd,

报错信息如下:

服务器: 消息 8929,级别 16,状态 1,行 1

对象 id 2: 在文本 id 177078272 中发现错误,该文本的所有者是由 rid = (1:627:1) id = 1899153811 and indid = 10 标识的数据记录。

服务器: 消息 8961,级别 16,状态 1,行 1

表错误: 对象 id 2。text、ntext 或 image 节点(位于页 (1:875),槽 0,文本 id 177078272)与该节点位于页 (1:500),槽 14 处的引用不匹配。

'yinyi' 的 dbcc 结果。

'sysobjects' 的 dbcc 结果。

对象 'sysobjects' 有 419 行,这些行位于 7 页中。

'sysindexes' 的 dbcc 结果。

对象 'sysindexes' 有 451 行,这些行位于 22 页中。

checkdb 发现了 0 个分配错误和 2 个一致性错误(在表 'sysindexes' 中,该表的对象 id 为 2)。

'syscolumns' 的 dbcc 结果。

checkdb 发现了 0 个分配错误和 2 个一致性错误(在数据库 'yinyi' 中)。

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

这个是已经经过修复后仍然存在的问题,因为提示的是系统表sysobjects表存在问题,且有提示了rid及id,我将此条数据查询出来,交核对了同类型的数据库,也就一个栏位不一样,且表示的是一个所影响的行数,其它并无相应的差别。本来打算放弃的,不过后又尝试着将一个经常会使用到的一个表的数据全部清除(truncate),再进行checkdb则不再出现错误。然后将此表中的数据先查询出来放到临时表,再清掉所有的数据,再从临时表中insert进来,此时再来checkdb,

checkdb 发现了 0 个分配错误和0 个一致性错误(在数据库 'yinyi' 中)。

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

大功告成,此现象说明了其实checkdb出来若存在系统表有问题的情况下,我们的系统不会那么容易坏的。你首先需要检查的是你平时会用到的表,即使是checktable也不一定会出错,只能根据你软件中在哪一个点儿会弹错,分析用到的表,进行依次的排除。

此篇文章写到这里希望遇到类似“表错误: 对象 id 2。text、ntext 或 image 节点(位于页 (1:875),槽 0,文本 id 177078272)与该节点位于页 (1:500),槽 14 处的引用不匹配”问题的朋友们细心点儿,希望对大家有帮助!

更多信息请查看IT技术专栏

更多信息请查看数据库
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:hfpxwx
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map