![](/img/trans.png)
[英]SQL Server 2012 In-Place3 Upgrade and Timing of Database Version Change
[英]Change SQL Server database version
我有一個SQL Server 2008版本數據庫(版本號655)。 如果我嘗試創建將其附加到SQL Server 2005或SQL Server 2000,我收到一個錯誤:
此數據庫的版本為655.此服務器與版本612或之前的版本兼容
當然,我可以將數據庫附加到SQL Server 2008而不會出現錯誤。 我知道我可以為結構生成SQL命令,但許多表中也有很多數據。
如果我可以更改內部數據庫版本(兼容級別現在設置為SQL Server 2000),則任何服務器版本中的附加進程都將起作用,因為此進程會自動更新版本。
有什么建議么?
編輯:我剛剛意識到,如果版本號的更新是自動的,那么將無法進行版本更改。 所以,我重新提出了這個問題:
你知道任何生成“包”的工具,其數據和結構與2000年到2008年的SQL Server版本兼容嗎? 也許是工具或腳本。
再次感謝。
提前致謝。
在任何情況下,您都不能將數據庫從SQL Server 2008服務器附加到SQL Server 2005之類的先前版本。
沒有辦法實現這一點 - 沒有“轉換”工具來更改數據庫版本或任何東西。
如果您需要支持SQL Server 2005,則必須擁有一台SQL Server 2005服務器(可能在VM或其他東西中)。 或者您需要使用Red Gate的SQL Compare和SQL Data Compare等工具來同步SQL Server 2008和其他SQL Server 2005數據庫之間的更改。
不,對不起 在過時的SQL Server上重新創建數據庫。 與大多數軟件一樣,SQL Server僅支持UPGRADES,而不支持降級。
這是不可能的。 您不能將SQL Server數據庫附加/還原到早期版本的SQL Server。 你必須做出口/進口。
不,你不能將sql 2008降級為sql 2005
¿您知道任何生成“包”的工具,其數據和結構與2000年到2008年的SQL Server版本兼容嗎? 也許是工具或腳本。
老帖子。 我為期貨讀者添加了2條建議。 新的T-SQL功能(語法)不能反向移植(當然),但對於簡單的場景(每個表都有主鍵),您可以臨時設置和使用事務復制。 您還可以編寫一個腳本來BCP OUT每個表的數據(我建議/本機模式),也許使用sp_MSForEachTable作為該BCP命令 - 這實際上是復制的快照過程所做的。
我有同樣的問題,但有一種方法來實現這個問題:
從較高的SQL版本生成腳本(右鍵單擊您的數據庫>任務>生成腳本)然后在SQL較低版本上創建一個原始數據庫(使用相同的名稱)並運行您的腳本。
我為SQL 2012測試此解決方案到SQL 2005.除了為SQL開發的新函數更高版本每個架構和數據生成到.sql文件然后導入到低級SQL
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.