項目的.sqldeployment文件中有一個「總是重新創建數據庫」。取消選中此選項將產生一個自動生成的SQL腳本,它將逐漸更新數據庫而不會首先丟棄它。
還有一個選項「生成目標數據庫中但不在數據庫項目中的對象的DROP語句」。如果您希望在數據庫項目中刪除表格,存儲特效等,則需要檢查該選項。這將刪除用戶可能自己創建的用於測試,調試等的任何表等。
要更改.sqldeployment文件中的選項。在Visual Studio中打開文件。在解決方案資源管理器中展開數據庫項目,雙擊.sqldeployment文件(它可能位於DB項目下的屬性文件夾中)。或者打開數據庫項目的屬性頁面,然後單擊「部署配置文件」旁邊的「編輯...」按鈕。選中或取消選中數據庫部署時所需的選項。
我用VSDBCMD.exe 1單擊建立&部署我創建的腳本。它工作得很好。 VSDBCMD使用.sqldeployment文件 - 默認的.sqldeployment文件在.deploymanifest文件中指定,但可以通過在執行VSDBCMD時將其指定爲參數來覆蓋。另外,我相信Visual Studio會在部署數據庫項目時使用VSDBCMD,但我只是假設情況是這樣,因爲功能幾乎完全相同。
感謝您的信息亞當。那麼您將如何跟蹤數據庫的每個版本的整個生命週期?例如,如果我已經發布了5版本的數據庫,我該如何回滾到版本3?我有保存的基線創建腳本,然後保存每個自動生成的增量更新腳本嗎? – littlechris 2010-05-25 09:16:12
我們將VS2010 DB項目中的所有SQL文件添加到版本控制中,並使用標籤來跟蹤每個版本。要回滾到版本3,只需同步到v3標籤。 你真的應該使用版本控制你的數據庫。 Jeff Atwood撰寫了2篇關於數據庫版本控制的博客文章,我會推薦閱讀 數據庫是否受版本控制? zttp://www.codinghorror.com/blog/2006/12/is-your-database-under-version-control.html 讓您的數據庫受版本控制http://www.codinghorror.com/blog/2008 /02/get-your-database-under-version-control.html – 2010-06-04 19:52:31