Я бы распечатал содержимое @sql и @ FilePath.
Я только что прогнал некоторый код через окно отладчика MS SQL Server Manager, вы могли бы пройтись по коду.Я заметил, что вы, кажется, не сопоставили свои кавычки, и я не вижу, где вы инициализируете @FilePath ни к чему.Глядя на ваш последний сегмент, вы видите, что у него есть непревзойденные двойные кавычки.
Я не использовал двойные кавычки, я запустил запрос в конструкторе запросов в MSSQL Server Manager.Я получил вывод файла, перемещенные файлы, объединенные файлы и что-то еще из окна запроса.
Как эта простая команда объединения:
Exec master..xp_cmdshell 'type c:\bcp\sysobjects.txt >> c:\bcp\a.txt'
Также эта команда создания / вывода:
SELECT @sql = 'bcp master..sysobjects out c:\bcp\sysobjects.txt -c -t\t -T -S' + @@servername
REPLACE( @sql, 'sysobjects.txt', @EmpRecordsFILENAME)
EXEC master..xp_cmdshell @sql
Файлы были созданы и объединены с помощью этих простых команд!