2012-11-13 69 views
0

我創建的SQL Server 2008數據庫我分離數據庫和我過到服務器,運行SQL Server企業管理器中複製的.mdf(SQL服務器2000)。附上由SQL Server 2008在SQL Server中創建一個.mdf文件2000

當我嘗試附加MDF我得到...

微軟SQL-DMO(ODBC SQL狀態:HY000)錯誤602:找不到 行sysindexes中對數據庫ID 13,對象ID 1,索引ID 1.運行 sysindexes上的DBCC CHECKTABLE。

這是什麼意思?這是因爲數據庫是在一個更新的版本創建的?

+1

您**不能**在任何情況下將在SQL Server 2008上創建的數據庫重新附加或還原到早期版本的SQL Server。這是不可能的 - 沒有技巧,沒有解決方法,沒有工具 - 只是**不能**。 –

+0

您需要(1)在SQL Server 2000中創建新數據庫,(2)在2008數據庫中將所有數據庫對象腳本編寫爲SQL腳本,(3)在2000版本中運行這些腳本,以及(4)數據使用腳本或SQL Data 2008工具,如SQL Server 2008中的[Red-Gate SQL Data Compare](http://www.red-gate.com/products/sql-development/sql-data-compare/)到2000年。 –

回答

0

documentation上(我相信貶值,但在SQL Server 2000中使用)sp_attach_db的存儲過程:

由較新版本的SQL Server創建的數據庫不能 附着在早期版本。

我想你將不得不腳本的數據庫的模式和數據。

皮納爾戴夫對如何做到這一點here一個很好的教程 - 只記得確保你選擇以下設置:

在常規:

  • 腳本的服務器版本:SQL Server 2000中

下表/視圖選項:

  • 腳本數據:真

記住要仔細檢查設置其他任何你可能會感興趣的,如外鍵,觸發器等

+0

thx爲您提供幫助,我生成的.sql文件的說明在sql server 2000下創建我的數據庫。我只是想知道如何在sql server 2000中執行它,我嘗試通過複製所有,粘貼只是部分文件被複制 –

+0

@younesfaqri生成的文件可能相當大,所以我建議使用OSQL:http ://msdn.microsoft.com/en-us/library/aa213087%28v=sql.80%29.aspx – Bridge

0

這是做,能幹,但你需要將其轉換爲SQL 2000格式,然後再將其分離並將其附加到舊服務器上。以下是具體步驟:

在企業公司經理,右擊數據庫

選擇屬性

在左邊,點擊選項

改變 「兼容級別」 到SQL Server 2000(80)

然後保存並在重新附加到舊服務器之前分離。

相關問題