2017-08-28 58 views
0

私の下のコードで何が問題になっていますか?データベースプロジェクトを公開するためのバッチファイルを作成しようとしています。パッチとファイルの場所をハードコードするとうまく動作します。しかし、私はこれを得ることができない方法のいくつかは働いています。 私が手にエラーは、私は現在、次のコードを持っている変数と文字列バッチファイルを連結する

*** Argument 'SourceFile' has an invalid value: ''. 
*** Argument 'Profile' has an invalid value: ''. 

です。

SET SourceCodePath = "C:\SourceCode\Dev\Code" 
SET DACPACPath = %SourceCodePath%\Source\Data Service\SQL2014\bin\Debug\SQL2014.dacpac 
SET ProfilePath = %SourceCodePath%\Data Service\SQL2014\SQL2014.Local.publish.xml 
ECHO %ProfilePath% 
ECHO %DACPACPath% 
"c:\Program Files (x86)\Microsoft SQL Server\120\dac\bin\SqlPackage.exe" /Action:Publish /SourceFile:%DACPACPath% /Profile:%ProfilePath% 
PAUSE 
+2

にあなたのSETコマンドを変更「この作業をする」ということを意味すると言いますが、明らかな問題は、%ProfilePath%にスペースが含まれていることです。それに気づいた。 – Joe

+0

@Joe:はい申し訳ありません。今質問を更新しました。 – ckv

+1

パスの引用を試してみましたか?/ SourceFile: "%DACPACPath%"/Profile: "%ProfilePath%" – Joe

答えて

1

コマンド

SET SourceCodePath = "C:\SourceCode\Dev\Code" 

は終わりそう

に空白文字でSourceCodePathという変数を作成し、あなたの質問にはない

SET SourceCodePath=C:\SourceCode\Dev\Code 
SET DACPACPath=%SourceCodePath%\Source\Data Service\SQL2014\bin\Debug\SQL2014.dacpac 
.... 
+0

あなたの提案に基づいて試しましたが、依然として同じ出力が得られています。 – ckv

関連する問題