我們有幾個SQL腳本,它們是從實體模型生成的,它們需要以正確的順序運行+有幾個填充腳本,它們將一些測試數據插入到數據庫中。如何在sql文件中包含sql文件? MS SQL
現在我需要在正確的順序Visual Studio中打開這些所有的腳本,然後單擊執行SQL(CTRL移E)
有沒有一種方法來創建類似Master.sql和裏面我想用一些包括。像這樣:
BEGIN TRANSACTION
ImportOrInclude myDB1.sql
ImportOrInclude myDB2.sql
...
COMMIT
我需要這隻從視覺工作室運行,這不會是應用程序本身的一部分。
如何做到這一點?
編輯
我發現有個東西叫SQLCMD腳本,可以導入SQL文件 http://msdn.microsoft.com/en-us/library/aa833281%28v=vs.80%29.aspx
但我的問題是,那麼如何獲取當前解決方案的目錄路徑進入: ř命令
編輯2
所以我發現如何去做,並不完美,但工作。 糟糕的是$(SolutionDir)沒有從VS變量中加載,所以你需要手動設置它。 此代碼是指在Visual Studio中運行:
-- turn on in menu: Data -> Transact SQL editor -> SQL CMD mode
-- set this to path where the .sln file is.
:setvar SolutionDir C:\_work\projectname\
:!! echo $(SolutionDir)Maa.EntityModel.All\DbWEntityModel.edmx.sql
:r $(SolutionDir)Maa.EntityModel.All\DbWEntityModel.edmx.sql
go
:!! echo $(SolutionDir)Maa.EntityModel.All\DblQEntityModel.edmx.sql
:r $(SolutionDir)Maa.EntityModel.All\DbQEntityModel.edmx.sql
go
謝謝你,但我不工作。只有:r – 2012-03-07 10:21:22
確實如此,我剛剛測試過它。 – 2012-03-07 10:45:06
我試圖使用包含在visual studio中的sql命令,它以不同的方式工作 – 2012-03-07 10:52:28