附加數據庫出錯提示:
執行 Transact-SQL 語句或批處理時發生了異常。 (Microsoft.SqlServer.ConnectionInfo)
------------------------------
未能在 sysindexes 中找到數據庫 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.
未能打開新數據庫 'xiaoche'。CREATE DATABASE 將終止。 (Microsoft SQL Server,錯誤: 602)
解決方法:
一、
.select @@version看當前的數據庫實例版本,是不是SQL2000在附加SQL2005的數據庫。
二、
SQL2000附加SQL2005數據具體方法
如題,若使用SQL2000附加SQL2005的數據庫時在附加時會出現了錯誤602,提示“對sysindexes運行DBCC CHECKTABLE”因為數據庫附加到2005的時候, 數據庫文件已經自動升級到2005, 所以在2000下是無法再附加的(沒有向上兼容的)
直接restore或附加是不行的, 用腳本+導數據肯定沒有問題。
2005轉到2000的步驟步驟
1. 生成for 2000版本的數據庫腳本
2005 的manger studio
-- 打開"對象資源管理器"(沒有的話按F8), 連接到你的實例
-- 右鍵要轉到2000的庫
-- 任務
-- 生成腳本
-- 在"腳本向導"的"選擇數據庫"中, 確定選擇的是要轉到2000的庫
-- 勾選"為所選數據庫中的所有對象編寫腳本"
-- 在接下來的"選擇腳本選項"中, 找到"為服務器版本編寫腳本"項, 選擇"SQL Server 2000"
-- 其他選項根據需要設置
-- 最後把腳本保存到一個 .sql 腳本文件
2. 在2000中創建目標數據庫
在查詢分析器(或2005的manger studio在打開腳本文件), 連接到SQL Server 2000,執行上面生成的腳本.以創建一個新的數據庫
3. 將數據從2005導到2000
2005 的manger studio
-- 打開"對象資源管理器"(沒有的話按F8), 連接到你的實例
-- 右鍵要轉到2000的庫
-- 任務
-- 導出數據
-- 在"SQL Server 導入和導出向導"的"選擇數據源"步驟中, 確定選擇的是要導出的數據庫
-- 在"選擇目標"步驟中, 連接到 2000, 並選擇步驟2新建的庫
-- 在"選擇源表和源視圖"中, 選擇所有的表
-- 最後完成