如何使用BATCH文件执行文件夹中的所有SQL文件,并将每个文件的结果记录在<SQL filename> .log中?

Nit*_*ain -2 sql sql-server batch-file

我想使用BATCH文件执行一个文件夹及其子文件夹中的所有SQL文件,并将每个文件的结果记录在.log中。

例如,我有2个文件夹Config和Data,每个都有20个SQL文件(appuser.sql,tenant.sql等),以及每个文件夹中的LOG空子文件夹。

现在,我希望BATCH执行所有SQL文件,并且每个文件的输出应记录在每个文件夹的LOG子文件夹中的单独文件(appuser.log,tenant.log等)中。

另外,建议我是学习与SQL相关的BATCH脚本的最佳站点。

感谢您的帮助。

elz*_*ico 5

for /r "your_path" %%i in (*.sql) do (
  sqlcmd -i "%%i" -o "log\%%i.log"
)
Run Code Online (Sandbox Code Playgroud)

  • Imo应该是`sqlcmd -i“ %%〜fi” -o“ %%〜dpilog \ %%〜nxi.log” (2认同)