哈爾濱海月數(shù)據(jù)恢復(fù),技術(shù)亞洲領(lǐng)先 設(shè)為首頁(yè)加入收藏RSS訂閱
中國(guó)區(qū):哈爾濱(總部)鄭州福建深圳沈陽(yáng)合肥大連包頭淄博上海廣州
    南京杭州嘉興武漢濟(jì)南青島新疆太原
亞太區(qū):印度韓國(guó)泰國(guó)新加坡馬來西亞澳大利亞
Windows
sql server 系統(tǒng)表sysobjects、sysindexes、syscolumns 一致性錯(cuò)誤修復(fù)方法

******步: 處理可以訪問的數(shù)據(jù)表
(1.1) 找出哪些表不可訪問;
新建立一個(gè)sql svr數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)實(shí)體名為AisNew。進(jìn)入查詢分析器,執(zhí)行如下SQL:
–****************************************************
use AIS20030529181217
DECLARE @TbName VARCHAR(80)
DECLARE FindErrTable SCROLL CURSOR FOR
select name from AisNew.dbo. sysobjects where xtype=‘u’ order by name
OPEN FindErrTable
FETCH FindErrTable INTO @TbName
WHILE @@FETCH_STATUS<>-1
BEGIN
print @TbName
exec( ‘select top 1 * from’ + @TbName)
FETCH FindErrTable INTO @TbName
END
PRINT ‘Scan Complate…’
CLOSE FindErrTable
DEALLOCATE FindErrTable
–****************************************************
執(zhí)行此SQL給出的報(bào)告的***后幾行為:

T_voucher
服務(wù)器: 消息 644,級(jí)別 21,狀態(tài) 3,行 1
未能在索引頁(yè) (1:29262) 中找到 RID ‘161dd201a100′ 的索引條目(索引 ID 0,數(shù)據(jù)庫(kù) ‘AIS20030529181217′)。
連接中斷

根據(jù)以上報(bào)告可以知道 T_voucher 表在sysobjects表中的對(duì)應(yīng)記錄出錯(cuò),造成T_voucher不能訪問。修改上面的SQL:在聲明游標(biāo)的記錄集中屏蔽T_voucher 表。即:

DECLARE FindErrTable SCROLL CURSOR FOR
select name from AisNew.dbo. sysobjects where xtype=‘u’ and name != ‘t_voucher’
order by name

修改完畢,繼續(xù)執(zhí)行此SQL。如此反復(fù),就能夠不斷報(bào)告出sysobjects中那些表不能訪問。
(1.2) 導(dǎo) 庫(kù)
用SQL DTS工具將AIS20030529181217中可以訪問的數(shù)據(jù)表導(dǎo)入AisNew。
第二步:處理不可訪問的數(shù)據(jù)表:
(2.1) 找出系統(tǒng)表中錯(cuò)誤記錄的ID
–獲得AIS20030529181217中T_voucher表在sysobjects中的ID :
SELECT id FROM AIS20030529181217.dbo.sysobjects WHERE name=‘ t_voucher’
==》123
( 說明:通常即使sysobjects表?yè)p壞,不能做 select * from sysobjects 查詢,但是可以做 select ID,name from sysobjects 查詢。如果select ID,name from sysobjects 查詢也不能執(zhí)行,可以對(duì)照AisNew和AIS20030529181217兩個(gè)數(shù)據(jù)庫(kù)中的同名表: syscolumns。根據(jù)AisNew.dbo.syscolumns表中T_voucher所占字段的個(gè)數(shù)以及各個(gè)字段的名稱,在AIS20030529181217.dbo.syscolumns中找出T_voucher所對(duì)應(yīng)的記錄,由此獲得T_voucher在AIS20030529181217數(shù)據(jù)庫(kù)的系統(tǒng)表中所分配的ID。)

–獲得AisNew中T_voucher表在sysobjects中的ID :
SELECT id FROM AisNew.dbo.sysobjects WHERE name=‘ t_voucher’
==》456

(2.2) 刪除AIS20030529181217中系統(tǒng)表中錯(cuò)誤記錄:
DELETE AIS20030529181217.dbo.sysobjects WHERE id=123
DELETE AIS20030529181217.dbo.sysindexes WHERE id=123
DELETE AIS20030529181217.dbo.syscolumns WHERE id=123

(2.3) 重建系統(tǒng)表記錄
–重建AIS20030529181217.dbo.sysobjects表中T_voucher表對(duì)應(yīng)的記錄:
INSERT INTO AIS20030529181217.dbo.sysobjects
(name,id,xtype,uid,info,status,base_schema_ver,replinfo,parent_obj,crdate,ftcatid)
SELECT
‘t_voucher_b’,123,xtype,uid,info,status,base_schema_ver,replinfo,parent_obj,crdate,ftcatid
FROM AisNew.dbo. sysobjects WHERE id=456

–重建AIS20030529181217.dbo.sysindexes表中t_voucher表對(duì)應(yīng)的記錄:
INSERT INTO AIS20030529181217.dbo.sysindexes
(id,status,first,indid,root,minlen,keycnt,groupid,dpages,reserved,used,rowcnt,rowmodctr,reserved3,reserved4,xmaxlen,maxirow,OrigFillFactor,StatVersion,reserved2,FirstIAM,impid,lockflags,pgmodctr,keys,name,statblob)
SELECT
123,status,first,indid,root,minlen,keycnt,groupid,dpages,reserved,used,rowcnt,rowmodctr,reserved3,reserved4,xmaxlen,maxirow,OrigFillFactor,StatVersion,reserved2,FirstIAM,impid,lockflags,pgmodctr,keys,name,statblob
FROM AisNew.dbo.sysindexes WHERE id=456

–重建AIS20030529181217.dbo.syscolumns表中t_voucher表對(duì)應(yīng)的記錄:
INSERT INTO AIS20030529181217.dbo.syscolumns
(name,id,xtype,typestat,xusertype,length,xprec,xscale,colid,xoffset,bitpos,reserved,colstat,cdefault,domain,number,colorderby,autoval,offset,collationid,language)
SELECT
name,123,xtype,typestat,xusertype,length,xprec,xscale,colid,xoffset,bitpos,reserved,colstat,cdefault,domain,number,colORDERBY,autoval,offset,collationid,language
FROM AisNew.dbo.syscolumns WHERE id=456

(2.4)用DTS單獨(dú)將t_voucher_b表導(dǎo)入新的DataBase
經(jīng)過以上操作,AIS20030529181217中t_voucher_b 表與原t_voucher表共用同一ID。
試試看可否執(zhí)行SELECT * FROM t_voucher_b 查詢 -
如果可以,那么t_voucher_b就一定繼承原t_voucher表中的全部數(shù)據(jù)。再用INSERT INTO AisNew.dbo.T_voucher FROM AIS20030529181217.dbo.t_voucher_b
或DTS 將t_voucher_b中的數(shù)據(jù)導(dǎo)入AisNew。
如果執(zhí)行SELECT * FROM t_voucher_b 查詢?nèi)匀粓?bào)錯(cuò),這張表徹底沒戲了。
(2.5) 其他”不可訪問的數(shù)據(jù)表”處理方式同上,重復(fù)(2.1)~(2.4) 步。

 

 
返回
客戶服務(wù) +more
上門服務(wù)
服務(wù)承諾
異地恢復(fù)
收費(fèi)標(biāo)準(zhǔn)
付款方式
疑難解答
服務(wù)特色 +more
·免費(fèi)檢測(cè)
·免費(fèi)提供3天備份
·專業(yè)工程師提供服務(wù)
·免費(fèi)清潔送修的介質(zhì)
·數(shù)據(jù)恢復(fù)前報(bào)價(jià),客戶確認(rèn)后工程師開始數(shù)據(jù)恢復(fù)
·數(shù)據(jù)恢復(fù)不成功不收費(fèi)
·與客戶簽訂保密協(xié)議,對(duì)客戶的數(shù)
 據(jù)嚴(yán)格保密,整個(gè)恢復(fù)過程不會(huì)對(duì)
 客戶的原盤有任何的寫操作,以確
 保原盤的數(shù)據(jù)完全

·免費(fèi)參觀恢復(fù)全過程

·工程師在線免費(fèi)咨詢

·專業(yè)工程師提供服務(wù)
服務(wù)器數(shù)據(jù)恢復(fù) 點(diǎn)擊這里給我發(fā)消

息
數(shù)據(jù)庫(kù)修復(fù)
點(diǎn)擊這里給我發(fā)

消息
硬盤數(shù)據(jù)恢復(fù)
點(diǎn)擊這里給我發(fā)消

息
主站蜘蛛池模板: 亚洲伦理一区二区| 亚洲成a人一区二区三区| 精品女同一区二区| 亚洲色偷精品一区二区三区| 亚洲综合激情五月色一区| 国产日韩一区二区三区| 日韩在线一区高清在线| 一区二区福利视频| 国产a∨精品一区二区三区不卡| 精品无码av一区二区三区| 无码一区二区三区在线| 午夜肉伦伦影院久久精品免费看国产一区二区三区| 视频精品一区二区三区| 人妻久久久一区二区三区| 夜精品a一区二区三区| 国产精品一区三区| 麻豆一区二区免费播放网站| 后入内射国产一区二区| 无码日韩精品一区二区三区免费| 无码中文字幕乱码一区| 精品成人一区二区三区四区| 亚洲av无码一区二区三区观看| 日本一区二区三区精品视频| 亚洲国产精品一区二区久久| 国产精品电影一区二区三区| 久久久久一区二区三区| 波多野结衣在线观看一区二区三区| 日本在线不卡一区| 无码毛片一区二区三区视频免费播放 | 国产精品丝袜一区二区三区 | 国产SUV精品一区二区88L| 精品国产一区二区三区久久| 夜夜精品视频一区二区| 伊人久久精品无码av一区| 精品深夜AV无码一区二区老年| 免费一区二区无码视频在线播放 | 国产福利一区二区三区视频在线| 国产精品无码亚洲一区二区三区| 一区二区三区午夜| 怡红院美国分院一区二区 | 亚洲av无码片区一区二区三区|