2012-02-23 39 views
0

我們對管道中的某些大型模式更改進行了處理,需要一些技巧來手動編寫升級腳本。我們使用的是SQL Server 2000,而不是而不是可以訪問自動工具,也不是現在的選項。我們唯一的數據庫工具是SQL Server Management Studio。手動編寫SQL Server升級腳本的提示

+0

您是否還無法訪問Visual Studio? – 2012-02-23 19:27:27

+0

我們確實有VS2008,但它不支持數據庫項目的SQL Server 2000。 – Nosila 2012-02-23 19:35:20

回答

1

您可以將數據庫導入到具有更新版本SQL的本地計算機,然後您可以使用「生成腳本」功能編寫大量數據庫對象。

確保在高級設置中設置腳本爲SQL Server 2000

如果您有發生,你可以嘗試將其分成塊,並小批量運行腳本的問題。這樣,如果你有任何特定的生成腳本,你可以手動編寫SQL來讓它運行。

1

儘管您不太瞭解您的想法,但您可以使用Schema比較工具(如SQL Compare),然後將更改腳本編寫爲sql文件,然後在運行之前手動編輯該文件。我想這將是手動寫入而不寫入手動。

如果您需要手動編寫所有內容,我會建議使用一些智能感知類型的工具來加快速度。

1

您的升級策略可能會針對您的部署方案進行某種自定義,但以下幾點可能會有所幫助。

  • 你會想早點和經常測試(不是說你不會這麼做無論如何),所以一定要有一個測試數據庫中的初始模式,具有備份,以便能夠恢復以「開始」和測試您的升級任何次數。
  • 備份&恢復可能非常耗時,因此可能有一個沒有數據行的DB(僅限於架構)來測試升級腳本。請記住獲得「開始」備份,以便您可以按需返回。
  • 考慮將一系列腳本串在一起 - 您可以使用每個構建或功能或任何一個腳本。這樣,一旦你的腳本的一部分工作,你可以放下它。
  • 大數據遷移可能會變得棘手。如果您正在進行數據轉換,複製或將行移動到新表等,請務必在移動之前檢查行計數,然後再計算所有行。
  • 計劃失敗。如果出現問題,請制定解決方案 - 無論是將所有內容都回滾到部署開始時進行的備份或其他任何方式。只要確定你有一個計劃,並且你明白你的去/不去的要點。

祝你好運!