2017-06-12 7 views
-2

BATCHファイルを使用してフォルダとそのサブフォルダ内のすべてのSQLファイルを実行し、.log内の各ファイルの結果をログに記録します。BATCHファイルを使用してフォルダ内のすべてのSQLファイルを実行し、各ファイルの結果を<SQLファイル名> .logに記録する方法は?

たとえば、2つのフォルダConfigとDataがあり、それぞれに20個のSQLファイル(appuser.sql、tenant.sqlなど)と、各フォルダのLOG空のサブフォルダがあります。

ここで、BATCHにすべてのSQLファイルを実行させ、各ファイルの出力をそれぞれのLOGサブフォルダの別のファイル(appuser.log、tenant.logなど)に記録する必要があります。フォルダ。

また、SQL関連のBATCHスクリプティングを学ぶには最適なサイトをお勧めします。

ご協力いただきありがとうございます。

+0

別のオプションは、すべてのSQLスクリプトを再帰的に1つのファイルに連結してアップロードするプログラムを作成することです。なぜそれぞれのファイルに関連するログファイルが必要なのですか?バッチ全体に対して1つのログファイルで十分ではないでしょうか? –

+0

MS SQL Serverを使用している場合は、SQLCMDを使用してこれを実行できるはずです –

+5

緊急に書かれたコードが必要な場合は、プログラマーを雇う必要があります。 –

答えて

3
for /r "your_path" %%i in (*.sql) do (
    sqlcmd -i "%%i" -o "log\%%i.log" 
) 
+1

これは 'sqlcmd -i" %%〜fi "-o" %%〜dpilog \ %%〜nxi.log "' – LotPings

+0

になるはずです@elzooilogico –

+0

ありがとう@LotPings –

関連する問題