TSQL - 尝试使用批处理文件将打印输出写入文本文件

时间:2017-09-29 14:49:50

标签: sql-server tsql batch-file

我目前正在使用此命令尝试使用使用' print'的存储过程尝试将我在sql控制台(消息)中打印的输出写入文本文件。命令打印东西。我想使用bat可执行文件将打印的内容放入文本文件中。

sqlcmd -Q" exec myprocedure" -S servername -d dbname -o C:\ yourOutput.txt

但每当我运行这个批处理文件时,它只会打开yourOutput.txt及其空白...

C:\ filepath \ sqlcmd -Q" exec procedureName" -S servername -d dbname -o Sqlcmd:' dbname-o':意外的争论。输入' - ?'寻求帮助。

1 个答案:

答案 0 :(得分:1)

SQL auth:

sqlcmd -Q "exec schema.myprocedure;" -S servername -d dbname -u sqluser -p "sqluserpassword" -o C:\yourOutput.txt

Windows身份验证

sqlcmd -Q "exec schema.myprocedure;" -S servername -d dbname -o C:\yourOutput.txt

应使用适当的服务器名称架构 sqluser sqluserpassword

请注意,预期的服务器名称为:-S [protocol:]server[instance_name][,port] 例子:
-S tcp:localhost\instanceXXXXX,1433]
-S tcp:192.168.4.9\instanceYYYYY,1333]

键入:SELECT @@servername + '\' + @@servicename以获取 servername \ instancename 。例如,它可以为您提供:"CO-DESQL01\MSSQLSERVER"