Я использовал invoke-sqlcmd для запроса базы данных в MSSMS. Это работает без проблем.
У меня есть цикл, который выполняет запрос X количество раз, и запрос возвращает код ключа, например. TGHDWS4.
Мне нужен этот код ключа в виде строки в powershell. Затем я хочу добавить строку в массив.
Единственное, что я пробовал, это использовать invoke-sqlcmd. Я видел другие примеры в сети, которые используют методы создания и закрытия соединения, но я не хочу делать это, если это возможно.
Код ниже, где я нахожусь. Как добавить код ключа (возвращаемый из запроса) в массив в виде строки?
#Enter your confirmation numbers here;
$confArray = @(
'0000000090519838',
'0000000090059392'
)
$resultArray = @()
#Function that runs for each element in the above array
function getKeycode ($confNumber) {
$QueryFmt= "
select distinct top 100
aa.deliveryKeycode as 'Keycode'
from appointment a with (nolock)
left join appointmentattribute aa with (nolock) on aa.appointmentid = a.appointmentid
where
a.confirmationnumber in (
'"+ $confNumber + "'
)
"
$result = Invoke-Sqlcmd -ServerInstance myserver -Database mydatabase -Query $QueryFmt
$resultArray.Add($result)
}
#the for loop
foreach($con in $confArray){
getKeycode -confNumber $con
$count ++;
}