1
PS 스크립트 내에서 datetime 필드를 반환하는 SQL 명령이 있습니다. SQL Studio는 SQL Studio Manager 내에서 실행될 경우 예상대로 작동하지만 Powershell 내에서 실행하면 레코드 수 (이 경우 "1")를 "계산"합니다.Powershell v2.0 - 날짜를 반환하지 않는 SQL 쿼리
$SqlCmd.CommandText =
"SELECT q.execution_queued_timestamp
FROM [database].[dbo].[Execution_Queue] AS q
LEFT JOIN [database].[dbo].[Execution_Queue_Lock] AS l
ON l.lock_id = q.lock_id
WHERE execution_status_code = 'q'"
$SqlCmd.Connection = $SqlConnection
$SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter
$SqlAdapter.SelectCommand = $SqlCmd
$DataSet = New-Object System.Data.DataSet
$SqlConnection.Close()
$DataSet.Tables[0]
$SqlAdapter.Fill($DataSet)
$SQL = $SqlAdapter.Fill($DataSet)
그래서 SQL SM에서와 같이 datetime 형식을 얻는 대신 PowerShell에서 "1"을 얻습니다. 원래 T-SQL은 "* 선택"경우 유사한 동작을 볼 수
는 대신 실제 경기를 나열하는 대신의 레코드 수를 출력합니다.
아이디어가 있으십니까?
으로 변경하여 반환되는 행 수를 신경 쓰지 않는다면 무시해도됩니다. $ DataSet.Tables [0] .Rows [0] .execution_queued_timestamp – JDGEEK