從SQL2008數(shù)據(jù)庫導(dǎo)出數(shù)據(jù)到另外一個數(shù)據(jù)庫,如果數(shù)據(jù)庫中有自增主鍵,那么在導(dǎo)出的時候會報一個錯誤
用SQL2008導(dǎo)入數(shù)據(jù),選擇數(shù)據(jù)源為SQL2000的數(shù)據(jù)庫在導(dǎo)入過程中出現(xiàn)的錯誤~
詳細錯誤:
- 正在驗證 (錯誤)
消息
錯誤 0xc0202049: 數(shù)據(jù)流任務(wù): 無法在只讀列“I_AID”中插入數(shù)據(jù)。
(SQL Server 導(dǎo)入和導(dǎo)出向?qū)?
錯誤 0xc0202045: 數(shù)據(jù)流任務(wù): 驗證列元數(shù)據(jù)失敗。
(SQL Server 導(dǎo)入和導(dǎo)出向?qū)?
錯誤 0xc004706b: 數(shù)據(jù)流任務(wù): “組件“目標 - AcceptInfo”(28)”驗證失敗,返回的驗證狀態(tài)為“VS_ISBROKEN”。
(SQL Server 導(dǎo)入和導(dǎo)出向?qū)?
錯誤 0xc004700c: 數(shù)據(jù)流任務(wù): 一個或多個組件未能通過驗證。
(SQL Server 導(dǎo)入和導(dǎo)出向?qū)?
錯誤 0xc0024107: 數(shù)據(jù)流任務(wù): 任務(wù)驗證期間出錯。
(SQL Server 導(dǎo)入和導(dǎo)出向?qū)?
解決方案很簡單
在數(shù)據(jù)庫導(dǎo)入"選擇源表和源視圖"->點擊對應(yīng)表后的“編輯映射”按鈕->勾選“啟用標識列插入”->導(dǎo)入即可。
摘自 http://blog.csdn.net/abandonship/archive/2010/04/08/5461987.aspx。
經(jīng)過我試驗,確實可用。
如果源數(shù)據(jù)庫比目標數(shù)據(jù)庫版本更高,那么多半bak文件在目標數(shù)據(jù)庫不能還原。
這時候可用首先將表結(jié)構(gòu)和存儲過程導(dǎo)出到腳本,然后在目標數(shù)據(jù)庫中創(chuàng)建一個新的庫,執(zhí)行此腳本,將表結(jié)構(gòu)和存儲過程復(fù)制過來。
然后利用SQL的導(dǎo)出數(shù)據(jù)功能,將源數(shù)據(jù)庫的數(shù)據(jù)導(dǎo)出,如果數(shù)據(jù)庫中有自增主鍵,務(wù)必做上述操作,否則導(dǎo)出不成功。
這樣就把數(shù)據(jù)庫成功的還原到新的低版本數(shù)據(jù)庫中了。