Файл bat xp_cmdshell на самом деле не запускается

Я могу просто запустить эту команду SQL из SSMS, и файл .bat запускается:

EXECUTE xp_cmdshell 'C:\ReportPrinting\KarlTest\test.bat @TrxOid'

Я поместил его в хранимую процедуру, и, преодолев множество проблем с разрешениями, хранимая процедура выполняется просто отлично. Следовательно, я знаю, что сейчас действительно выполняется xp_cmndshell.

Однако на самом деле пакетный файл не запускается. Итак, похоже, что SQL Server правильно отправляет команду в Windows, но Windows ее не запускает.

Что мне нужно учитывать?


person Karl    schedule 03.11.2017    source источник
comment
С чего ты взял, что он не запущен? Я предполагаю, что @TrxOid предназначен для переменной T-SQL. Как бы то ни было, он не передает значение переменной T-SQL.   -  person Nick.McDermaid    schedule 04.11.2017


Ответы (1)


В этом была проблема. Вот что исправлено:

select @message = 'C:\LabelPrinting\ReportPrinting\Parts\PostSubmitAdjustment.bat '+ cast(@TrxOid as nvarchar(100))
        EXECUTE xp_cmdshell @message
person Karl    schedule 06.11.2017