0
我有一個PowerShell腳本調用SQLCMD運行,備份數據庫的SQL腳本:SQLCMD,從Powershell的調用時,返回的ExitCode == 1,即使成功
function RunSqlScriptWithErrorMessage
{
param([string]$sqlServer, [string]$sqlUserName, [string]$sqlPassword, [string]$scriptName, [string]$errorMessage)
$commandName = "sqlcmd"
$startInfo = New-Object Diagnostics.ProcessStartInfo($commandName)
$startInfo.UseShellExecute = $false
$startInfo.Arguments = "-S $sqlServer -U $sqlUserName -P $sqlPassword -i `"${sqlScriptName}`""
$process = [Diagnostics.Process]::Start($startInfo)
$process.WaitForExit()
$exitCode = $process.ExitCode
if($exitCode -ne 0) { throw $errorMessage}
}
奇怪的是, process.ExitCode == 1即使備份成功。任何想法爲什麼會這樣 - 如果成功,不應該將exitcode設爲0?
謝謝!