有没有办法让函数Invoke-Sqlcmd2
在失败时不终止其余的脚本?
即使此命令失败,我希望我的其余脚本继续运行。
我已经挖掘了代码,我的想法是它与-ErrorAction
参数有关。
以下是剧本的第488行:
Catch # For other exception
{
Write-Verbose "Capture Other Error"
$Err = $_
if ($PSBoundParameters.Verbose) {Write-Verbose "Other Error: $Err"}
switch ($ErrorActionPreference.tostring())
{
{'SilentlyContinue','Ignore' -contains $_} {}
'Stop' { Throw $Err} # Removing this line doesn't work
'Continue' { Throw $Err}
Default { Throw $Err}
}
}
有关如何让此命令无法终止'
的任何想法解决方案: 谢谢(你的)信息。我最终在一个try-catch陷阱中包装了invoke-sqlcmd2的错误处理部分。
答案 0 :(得分:0)
将Invoke-SQLCMD2置于try catch块中,并记录引发的错误。 这样你就可以处理错误了,脚本就会继续。