У меня есть script, который запускает Invoke-SQLCmd против SQLServer под названием Server1. Данные, собранные из этого, передаются вместе с другим script, который запускается с Server2, и результаты вставляются обратно в таблицу на сервере 1. На каждом Invoke-SQLCmd я использовал -user -password с учетной записью, которая имеет разрешения sa для обеих систем.
Когда я запускаю script из командной оболочки или из ISE Poershell, мои данные вставляются в таблицу, и все отлично работает; Когда я запускаю его из SQL, ничего не происходит. Я не получаю никаких выходов (возвращается "null" ), когда я использую xp_cmdshell, как показано ниже.
xp_cmdshell 'powershell.exe -file c:\script.ps1 -ExecutionPolicy Unrestricted'
Я поместил его в SQLjob и использовал учетную запись прокси, которая ссылается на мою учетную запись домена, у которой есть права администратора на обоих блоках, но все еще нет результатов, записанных в истории заданий, и никаких данных в моей таблице на Server1.
Что я делаю неправильно? это должно работать, если оно работает от ISE?