我想在Visual Studio(使用MSBuild)中添加一些存儲過程到構建過程。在visual studio中執行數據庫項目的腳本
我有一個數據庫項目(* .dbp)添加到我的解決方案,但不像其他一些VS中可用的數據庫項目我無法構建或運行它。 (我相信這是我所需要的項目文件,因爲我使用的是SQL2000)
如何在構建項目時獲取SQL腳本運行? 我可以通過右鍵單擊並按運行來運行腳本。
我想在Visual Studio(使用MSBuild)中添加一些存儲過程到構建過程。在visual studio中執行數據庫項目的腳本
我有一個數據庫項目(* .dbp)添加到我的解決方案,但不像其他一些VS中可用的數據庫項目我無法構建或運行它。 (我相信這是我所需要的項目文件,因爲我使用的是SQL2000)
如何在構建項目時獲取SQL腳本運行? 我可以通過右鍵單擊並按運行來運行腳本。
數據庫項目不像普通項目那樣構建。如果你想在這個項目中執行腳本,我的建議是擴展與MSBuild兼容的相關項目(csproj,vbproj等),並使用你選擇的工具從那裏引用/執行你的腳本。
如何實現它取決於您,例如,您可以掛鉤到BeforeBuild目標並使用SqlExecute任務執行腳本。
FWIW,我們必須支持SQL Server 2000,2005,2008+,因此任務變得更加困難;認爲NVarchar(max)(2005+)與NText(2000+)加上版本之間的所有sp重命名等。我們還希望開發人員,QA和安裝人員使用一個腳本來確保一致性。所以我們的方法是一個自定義工具,它允許腳本內的標記/關鍵字替換,這爲不同SQL Server版本和客戶安裝(例如用戶/登錄細節,數據庫名稱)之間提供了靈活性,並且集成到各種技術中,以便腳本可以從命令行,MSBuild,使用Wix項目的MSI自定義操作,或任何我們需要它們運行的操作。
可以構建數據庫項目。
他們無法運行 - 他們可以部署。
部署時,項目會構建並部署。代碼將與Pre-Build和Post-Build腳本以及Pre-Deployment和Post-Deployment腳本一起部署。
因此,如果您希望在構建項目時運行腳本,則需要查看Project屬性中Build Events下的Pre-Build和Post-Build。