2011-05-11 297 views
2

我一直在Visual Studio 2010中使用數據庫項目來創建數據庫。 Visual Studio使這個過程非常容易部署數據庫和部署更新。我遇到的問題是如何讓Visual Studio創建一個腳本來構建我可以在QA或生產系統上使用的數據庫。Visual Studio 2010數據庫項目安裝程序/安裝腳本

我認爲構建項目會創建一個SQL文件,但這似乎並不正確。有人可以請告訴我如何做到這一點,或者我明顯缺少什麼簡單的步驟。

+0

IM – JML 2011-09-06 12:05:40

回答

1

聽起來很奇怪,當您執行構建時,Visual Studio不會創建SQL文件來部署數據庫。

相反,這發生在部署時。這背後的原因在於Visual Studio對要部署的數據庫進行更改的方式:爲了更改數據庫,它必須首先將項目模型(如.dbproj中包含的文件中定義的)與確定自數據庫上次部署以來所做的更改。

然後,您可以選擇手動執行使用SQLCMD命令行實用程序(或通過SQLCMD模式下的SSMS)生成的SQL腳本,或者可以將Visual Studio數據庫項目配置爲在指定在項目設置以下部署操作:

Generate a deploy script (.sql) and deploy to the database 

請注意,您需要提供在項目設置一個連接字符串,所以VS知道在哪裏部署。

當你到要部署到QA或PROD環境的階段,你有兩個選擇:直接在Visual Studio中

  • 部署。除了首次創建數據庫項目時獲得的標準調試和發佈配置外,您還可以創建自己的配置,您可以使用該配置將其部署到您的QA和PROD環境(即可能使用不同的連接字符串/目標數據庫名稱)。
  • 從構建服務器部署。在單獨的計算機上安裝Visual Studio,並使用指定的構建和部署目標以及相應的連接屬性,針對.dbproj/.sln文件調用MsBuild。

道格·拉思伯恩寫了這一問題產生極大的博客文章,如果你想了解更多:有同樣的問題請別人幫助 http://www.diaryofaninja.com/blog/2011/06/23/compare-amp-update-database-schemas-right-within-your-ide--part-2-automation-with-teamcity

相關問題