0

有没有办法让函数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}
    }
}

关于如何让这个命令“不终止”的任何想法?

解决方案: 感谢您的信息。我最终将 invoke-sqlcmd2 的错误处理部分包装在一个 try-catch 陷阱中。

4

1 回答 1

0

将 Invoke-SQLCMD2 放在 try catch 块中,并可能记录抛出的错误。这样您将处理错误并且脚本将继续。

于 2016-10-30T12:24:03.837 回答