Я могу привести только пример, так как не знаю содержимого сценария sql.
$out = foreach ($SERVER in $SERVERS) {
$InvokeParams = @{
Server = $SERVER
Database = 'test database'
Username = 'username'
Password = 'password'
Query = "Select Column1,Column2 from Table"
QueryTimeout = 120 #avoid query to break
}
Invoke-Sqlcmd @InvokeParams
}
Вам просто нужно добавить свой запрос к ключу Query
в вашей хэш-таблице $InvokeParams
. Если вы хотите, чтобы ваша хеш-таблица была более точной, вы всегда можете ввести запрос в виде строки и установить для него другую переменную. Затем используйте Query = $variable
в вашей хэш-таблице. Если запрос длинный (многострочный) и содержит другие кавычки, вы можете использовать здесь-строку (@''@
или @""@
) для упрощения.
$Query = @'
USE Database
Select Table1.Column1,Table1.Column2,Table2.Column1
FROM Table1
JOIN Column1 ON Table2.Column1=Table1.Column1
GO
'@
$out = foreach ($SERVER in $SERVERS) {
$InvokeParams = @{
Server = $SERVER
Database = 'test database'
Username = 'username'
Password = 'password'
Query = $Query
QueryTimeout = 120 #avoid query to break
}
Invoke-Sqlcmd @InvokeParams
}