昂捷论坛≡零售最前线≡□-技术研讨会 → 数据表错误导致日结失败的处理过程


  共有27237人关注过本帖平板打印

主题:数据表错误导致日结失败的处理过程

帅哥哟,离线,有人找我吗?
prcak47
  1楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级管理员 帖子:145 积分:2648 威望:0 精华:0 注册:2005/12/10 16:23:42
数据表错误导致日结失败的处理过程  发帖心情 Post By:2011/9/9 17:26:02

某客户反应日结失败,手工执行指示如下错误

 

(1 行受影响)

(1 行受影响)
消息 0,级别 11,状态 0,第 0 行
当前命令发生了严重错误。应放弃任何可能产生的结果。

 

找到日结过程,单步执行后,发现是tb_o_sg表提示错误

执行select * from tb_o_sg就会有这种错误

 

用语句检查表

dbcc checktable('tb_o_sg')

返回信息是正常的

 

重建索引提示错误,删除索引in_o_sg_gds失败,删除索引PK_tb_o_sg成功,创建失败。

 

用语句

 

----将数据库创建为单用户

ALTER DATABASE enjoy_store
SET SINGLE_USER
WITH ROLLBACK IMMEDIATE;
----修复表及其索引
dbcc checktable('tb_o_sg',REPAIR_ALLOW_DATA_LOSS)
----恢复数据库状态
ALTER DATABASE enjoy_store
SET MULTI_USER;

 

执行结果如下

 

tb_o_sg的 DBCC 结果。
修复: 已为数据库 'enjoy_store' 中的对象 'dbo.tb_o_sg' 成功地重新生成了 Clustered 索引。
修复: 页 (1:193916) 已从对象 ID 983934827,索引 ID 1,分区 ID 72057607359823872,分配单元 ID 72057607649361920 (类型为 In-row data)释放。
修复: 已为数据库 'enjoy_store' 中的对象 'dbo.tb_o_sg, in_o_sg_datetime' 成功地重新生成了 Nonclustered 索引。
修复: 已为数据库 'enjoy_store' 中的对象 'dbo.tb_o_sg, in_o_sg_identity' 成功地重新生成了 Nonclustered 索引。
修复: 已为数据库 'enjoy_store' 中的对象 'dbo.tb_o_sg, in_o_sg_seller' 成功地重新生成了 Nonclustered 索引。
消息 8945,级别 16,状态 1,第 1 行
表错误: 将重新生成对象 ID 983934827,索引 ID 1。
该错误已修复。
消息 8928,级别 16,状态 1,第 1 行
对象 ID 983934827,索引 ID 1,分区 ID 72057607359823872,分配单元 ID 72057607649361920 (类型为 In-row data): 无法处理页 (1:193916)。有关详细信息,请参阅其他错误消息。
该错误已修复。
消息 8944,级别 16,状态 15,第 1 行
表错误: 对象 ID 983934827,索引 ID 1,分区 ID 72057607359823872,分配单元 ID 72057607649361920 (类型为 In-row data),页 (1:193916),行 0。测试(nVarCols && (hdr->r_tagA & RecConst::VARIABLE_COLUMNS))失败。值为 0 和 32。
该错误已修复。
消息 8944,级别 16,状态 15,第 1 行
表错误: 对象 ID 983934827,索引 ID 1,分区 ID 72057607359823872,分配单元 ID 72057607649361920 (类型为 In-row data),页 (1:193916),行 0。测试(nVarCols && (hdr->r_tagA & RecConst::VARIABLE_COLUMNS))失败。值为 0 和 32。
该错误已修复。
消息 8976,级别 16,状态 1,第 1 行
表错误: 对象 ID 983934827,索引 ID 1,分区 ID 72057607359823872,分配单元 ID 72057607649361920 (类型为 In-row data)。在扫描过程中未发现页 (1:193916),但该页的父级 (1:206592) 和上一页 (1:193914) 都引用了它。请检查以前的错误消息。
该错误已修复。
消息 8978,级别 16,状态 1,第 1 行
表错误: 对象 ID 983934827,索引 ID 1,分区 ID 72057607359823872,分配单元 ID 72057607649361920 (类型为 In-row data)。页 (1:193917) 缺少上一页 (1:193916) 对它的引用。可能是因为链链接有问题。
该错误已修复。
消息 8945,级别 16,状态 1,第 1 行
表错误: 将重新生成对象 ID 983934827,索引 ID 2。
该错误已修复。
消息 8945,级别 16,状态 1,第 1 行
表错误: 将重新生成对象 ID 983934827,索引 ID 3。
该错误已修复。
消息 8945,级别 16,状态 1,第 1 行
表错误: 将重新生成对象 ID 983934827,索引 ID 28。
该错误已修复。
对象 'tb_o_sg' 的 5621 页中有 127062 行。
CHECKTABLE 在表 'tb_o_sg' (对象 ID 983934827)中发现 0 个分配错误和 5 个一致性错误。
CHECKTABLE 在表 'tb_o_sg' (对象 ID 983934827)中修复了 0 个分配错误和 5 个一致性错误。
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。

 

再执行select * from tb_o_sg,没有提示错误

 


使用IE9无法添加附件的解决方法 支持(0中立(0反对(0回到顶部