Jon*_*ton 2 sql-server-2008-r2 sqlcmd error-handling
我正在尝试将一个批处理文件放在一起以运行大量 .sql 文件,而无需单独执行此操作。
到目前为止,我有:
@echo off
echo "Enter Server"
set /p SERVER=
echo "Enter Database"
set /p DATABASE=
del *.log
for /r %%i in (*.sql) do sqlcmd -E -S %SERVER% -d %DATABASE% -i"%%i" -m0 -o"%%i.log" -w500
pause
Run Code Online (Sandbox Code Playgroud)
就目前而言,这有效。
然而,我真正想做的是将任何错误路由到一个单独的 .err 文件,以便一目了然地清楚哪些(100+)个文件失败。
我看到了:Error
参数,但我不确定如何在此处应用它。
有没有简单的方法来实现这一目标?
for /r %%i in (*.sql) do sqlcmd -E -S %SERVER% -d %DATABASE% -i"%%i" -m0 -w500 -b -r >%%i.log 2>%%i.err
Run Code Online (Sandbox Code Playgroud)
不完美,因为它会在没有错误时创建一个空的错误输出文件,但大于 0 字节的 .err 文件将包含错误。
for %%a in (*.err) do if %%~za==0 del "%%a"
Run Code Online (Sandbox Code Playgroud)
..如果这是一个问题...
归档时间: |
|
查看次数: |
1529 次 |
最近记录: |