SQLCMD を介して次のコマンドを発行したいと思います。
IF DB_ID('My_DB') IS NOT NULL DROP DATABASE My_DB
若干の注意点はありますが…
- データベース名は動的です
- コマンド (BuildForge) を実行しているプログラムは、単一引用符で囲まれた変数を置き換えません。
だから、私は使用できません:
-Q"IF DB_ID('${db_name}') IS NOT NULL DROP DATABASE ${db_name}
一重引用符でリテラル ${db_name} を使用するためです。私も使用できません:
-Q"IF DB_ID("${db_name}") IS NOT NULL DROP DATABASE ${db_name}
二重引用符の最初と最後で SQLCMD がつまずくためです。
スクリプトを作成してデータベース名のパラメーターを渡すことができることはわかっていますが、スクリプトを使用せずに 1 つのコマンド ラインでこれを行う方法はありますか? 二重引用符などをエスケープする方法はありますか? 文字列を正しく構築できる BuildForge 構文はありますか?
ありがとう!