Invoke-Sqlcmd2 不会因错误而终止
Invoke-Sqlcmd2 do not terminate on error
有什么方法可以使函数 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}
}
}
关于如何将此命令发送到 'non-terminate' 的任何想法?
解法:
谢谢(你的)信息。我最终将 invoke-sqlcmd2 的错误处理部分包装在一个 try-catch 陷阱中。
将 Invoke-SQLCMD2 放入 try catch 块中,并可能记录抛出的错误。
这样您将处理错误并且脚本将继续。
有什么方法可以使函数 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}
}
}
关于如何将此命令发送到 'non-terminate' 的任何想法?
解法: 谢谢(你的)信息。我最终将 invoke-sqlcmd2 的错误处理部分包装在一个 try-catch 陷阱中。
将 Invoke-SQLCMD2 放入 try catch 块中,并可能记录抛出的错误。 这样您将处理错误并且脚本将继续。