エンティティモデルから生成され、正しい順序で実行する必要のあるいくつかのSQLスクリプトがあります。いくつかのテストスクリプトがあり、いくつかのテストスクリプトがデータベースに挿入されています。sqlファイルにsqlファイルを含めるには? MS SQL
は今、私は正しい順序でVisual Studioでこれらのスクリプトのすべてのを開き、
Master.sqlのようなものを作成する方法はありますし、私が使用したいの内部でSQL(CTRLシフトE)を実行]をクリックする必要がありますいくつか含まれています。次のようなものがあります:
BEGIN TRANSACTION
ImportOrInclude myDB1.sql
ImportOrInclude myDB2.sql
...
COMMIT
これはビジュアルスタジオから実行する必要がありますが、これはアプリケーション自体の一部ではありません。
どうすればよいですか?
編集
がSQLファイルをインポートすることができSQLCMDスクリプトと呼ばれるもの http://msdn.microsoft.com/en-us/library/aa833281%28v=vs.80%29.aspx
があるしかし、私の質問はに現在のソリューションのディレクトリパスを取得する方法を、次にであることを、私を見つけました: Rコマンド
EDIT 2
私はそれを行う方法を見つけました。完璧ではなく、働いていました。 $(SolutionDir)がVS変数から読み込まれないため、手動で設定する必要があります。
-- 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
ありがとうございますが、-iは動作しません。のみ:r –
確かに、私はそれをテストした。 –
Visual Studioに含まれているsqlコマンドを使用しようとしましたが、別の方法で動作します –