SQLCMD连接错误处理

时间:2017-03-07 10:21:19

标签: sql sql-server tsql sqlcmd

如果一个T-SQL脚本无法连接,则在T-SQL脚本中运行多个:CONNECT语句时,不会运行该脚本的其余部分。

是否有一些SQLCMD命令可用作Try / Catch块来处理连接错误?我知道T-SQL Try / Catch无效,因为在SQL代码之前运行了SQLCMD命令。

1 个答案:

答案 0 :(得分:1)

您可以将sqlcmd代码放在批处理文件中,然后执行批处理文件(如建议的here)。

您可以使用选项-S指定要连接的服务器,并使用选项-Q指定您的TSQL代码(有关MSDN的更多信息)。

例如:

sqlcmd -S WrongServerName -Q "select @@servername"
sqlcmd -S CorrectServerName -Q "select @@servername"

pause

第一个命令将失败(如果WrongServerName是不存在或脱机服务器),而第二个命令将被执行(如果CorrectServerName是在线服务器)并且将返回名称服务器。