繁体   English   中英

sqlcmd,带有输出文件和屏幕输出

[英]sqlcmd with output file and screen output

我用sqlcmd做一些命令行批处理(.bat):

sqlcmd -i Scripts\STEP01.sql -o PROCESS.log -S MYSERVER -E -d MYDATABASE

我需要一个输出文件(它目前正在工作),还需要输出屏幕来执行以下操作:

@echo off
echo The result of the query was:
    sqlcmd -i Scripts\STEP01.sql -o PROCESS.log -S MYSERVER -E -d MYDATABASE
pause
CHOICE /C:YN /M "Is the result accord?"
IF ERRORLEVEL 2 GOTO ENDWITHERROR
IF ERRORLEVEL 1 GOTO STEP2

注意

  • 是的,脚本工作很麻烦,这不是问题。
  • 是的,我在我的SQL上有一个“打印”的东西。日志文件获取输出。

非常感谢!

类似的问题没有答案: 如何使用sqlcmd运行sql脚本文件并输出到shell和文件

我也找不到更好的方法然后@Sparky提出。 以下代码添加了他的建议:

@echo off

:: this will execute the script into PROCESS.log
sqlcmd -i Scripts\STEP01.sql -o PROCESS.log -S MYSERVER -E -d MYDATABASE

:: this present the contents of PROCESS.log to the screen
echo The result of the query was:
type PROCESS.log

pause
CHOICE /C:YN /M "Is the result accord?"
IF ERRORLEVEL 2 GOTO ENDWITHERROR
IF ERRORLEVEL 1 GOTO STEP2

如果您愿意,可以使用powershell,并使用以下内容:

sqlcmd -i Scripts\STEP01.sql  -S SERVER -E -d MYDB | Tee-Object -file "PROCESS.log"

来自Microsoft的更多信息

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM