Теперь, если я выполню один запрос
SELECT @header,@inland FOR XML RAW(''),ROOT('root'), ELEMENTS, TYPE
Я получаю правильные данные XML.
Но если я вставлю запрос в exec master..xp_cmdshell
declare @cmd varchar(2000) = 'bcp "SELECT @header,@inland FOR XML RAW(''''),ROOT(''root''), ELEMENTS, TYPE" queryout "\\server01\TEMP_SW\XML_TMS\test_'+@num+'.xml" -U xx -P xxxxx -c -C ANSI -t;' ;
exec master..xp_cmdshell @cmd;
Система вернет ошибку
SQLState = 37000, NativeError = 137
Error = [Microsoft][SQL Native Client][SQL Server]Must declare the scalar variable "@header".
SQLState = 37000, NativeError = 8180
Error = [Microsoft][SQL Native Client][SQL Server]Statement(s) could not be prepared.
NULL
@ заголовок объявлен как XML
Дайте мне знать, спасибо и привет