附加SQL2005數(shù)據(jù)庫 出現(xiàn)“Transact-SQL 語句或批處理時發(fā)生了異?!?/h1>
今天在做項目的時候,在附加數(shù)據(jù)庫的時候遇到了問題,因為也不知道之前的庫的那個,2000,還是05?不太清楚,目前我自己用的庫的08,在附加的時候果然出現(xiàn)了問題??梢钥吹饺缦洛e誤,我截圖!
下面我們就來解決此問題!
附加數(shù)據(jù)庫出錯提示:
執(zhí)行 Transact-SQL 語句或批處理時發(fā)生了異常。 (Microsoft.SqlServer.ConnectionInfo)
------------------------------
未能在 sysindexes 中找到數(shù)據(jù)庫 ID 7 中對象 ID 1 的索引 ID 1 對應的行。請對 sysindexes 運行 DBCC CHECKTABLE。
Could not find row in sysindexes for database ID 7, object ID 1, index ID 1. Run DBCC CHECKTABLE on sysindexes.
未能打開新數(shù)據(jù)庫 'xiaoche'。CREATE DATABASE 將終止。 (Microsoft SQL Server,錯誤: 602)
解決方法:
一、
.select @@version看當前的數(shù)據(jù)庫實例版本,是不是SQL2000在附加SQL2005的數(shù)據(jù)庫。
二、
SQL2000附加SQL2005數(shù)據(jù)具體方法
如題,若使用SQL2000附加SQL2005的數(shù)據(jù)庫時在附加時會出現(xiàn)了錯誤602,提示“對sysindexes運行DBCC CHECKTABLE”因為數(shù)據(jù)庫附加到2005的時候, 數(shù)據(jù)庫文件已經(jīng)自動升級到2005, 所以在2000下是無法再附加的(沒有向上兼容的)
直接restore或附加是不行的, 用腳本+導數(shù)據(jù)肯定沒有問題。
2005轉(zhuǎn)到2000的步驟步驟
1. 生成for 2000版本的數(shù)據(jù)庫腳本
2005 的manger studio
-- 打開"對象資源管理器"(沒有的話按F8), 連接到你的實例
-- 右鍵要轉(zhuǎn)到2000的庫
-- 任務
-- 生成腳本
-- 在"腳本向?qū)?quot;的"選擇數(shù)據(jù)庫"中, 確定選擇的是要轉(zhuǎn)到2000的庫
-- 勾選"為所選數(shù)據(jù)庫中的所有對象編寫腳本"
-- 在接下來的"選擇腳本選項"中, 找到"為服務器版本編寫腳本"項, 選擇"SQL Server 2000"
-- 其他選項根據(jù)需要設置
-- 最后把腳本保存到一個 .sql 腳本文件
2. 在2000中創(chuàng)建目標數(shù)據(jù)庫
在查詢分析器(或2005的manger studio在打開腳本文件), 連接到SQL Server 2000,執(zhí)行上面生成的腳本.以創(chuàng)建一個新的數(shù)據(jù)庫
3. 將數(shù)據(jù)從2005導到2000
2005 的manger studio
-- 打開"對象資源管理器"(沒有的話按F8), 連接到你的實例
-- 右鍵要轉(zhuǎn)到2000的庫
-- 任務
-- 導出數(shù)據(jù)
-- 在"SQL Server 導入和導出向?qū)?quot;的"選擇數(shù)據(jù)源"步驟中, 確定選擇的是要導出的數(shù)據(jù)庫
-- 在"選擇目標"步驟中, 連接到 2000, 并選擇步驟2新建的庫
-- 在"選擇源表和源視圖"中, 選擇所有的表
-- 最后完成
關(guān)鍵詞:SQL2005,數(shù)據(jù)庫
閱讀本文后您有什么感想? 已有 人給出評價!
- 1
- 1
- 1
- 1
- 1
- 1