В PowerShell я пытаюсь написать оператор if
о том, больше ли результат COUNT
с SQL Server равен 0. Ниже у меня есть:
$SqlConnection = New-Object System.Data.SqlClient.SqlConnection
$SqlConnection.ConnectionString = "Our Connection String"
$SqlCmd = New-Object System.Data.SqlClient.SqlCommand
$SqlCmd.CommandText = "SELECT COUNT(*) FROM dbo.Source WHERE SourceId IS NULL"
$SqlCmd.Connection = $SqlConnection
$SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter
$SqlAdapter.SelectCommand = $SqlCmd
$DataSet = New-Object System.Data.DataSet
$Table = New-Object System.Data.DataTable
$SqlAdapter.Fill($Table) | Out-Null
if ($Table > 0) {
Write-Output "The Count is greater than zero, please investigate"
}
Я знаю *Заявление 1006 * внизу - это плохой синтаксис, и я пробовал много других способов выразить его безрезультатно.Я запускаю скрипт, я не получаю никаких ошибок, но он просто завершается и ничего не происходит.Я убедился, что если я удалю Out-Null
из строки $SqlAdapter.Fill()
, PowerShell вернет число, поэтому я знаю все до тех пор, пока эта точка не заработает.
Мне просто нужно заставить его записатьвывод, если число больше 1, что в этом запросе SQL, это определенно.Как бы я написал это if
заявление?