У меня есть .sql-файл со сценариями, включающими элементы SQLCMD.Запуск сценария SQLCMD из SSIS Выполнение задачи процесса с переменными
Мне нужно, чтобы он запускался из пакета SSIS.
Мне не удалось выполнить его с помощью «Выполнение SQL Задача».
Согласно этому http://www.sqlservercentral.com/Forums/Topic818940-147-1.aspx я должен использовать "Выполнить процесс задач" с:
Executable: C: \ Program Files \ Microsoft SQL Server \ 100 \ Tools \ Binn \ Sqlcmd.exe
Аргументы: -S сервер -U пользователь -P pass -i C: \ path \ to \ file.sql
Это нормально работает.
Но мне нужны аргументы, чтобы включить переменную. Что я пробовал, он терпит неудачу.
Аргументы: -S сервер -U пользователь -P передать -i @ [User :: FileNameView]
ошибка:
[Execute Process Task] Error: In Executing "C:\Program Files\Microsoft SQL Server\100\Tools\Binn\SQLCMD.EXE" "-S server -U user -P pass -i @[User::FileNameView]" at "", The process exit code was "1" while the expected was "0".
Мои вопросы is: Как включить переменную в строку Аргументы? Есть ли другой подход, который я должен принять?
Дополнительно:
SQL Server 2008R2
Причина мне это нужно, чтобы быть переменными, потому что я поставил «Выполнить Process Task» в «Для каждого контура», чтобы быть в состоянии выполнить все. sql-файлы в папке.
Это ошибка, которую я получаю при попытке: '[Выполнять задачу процесса] Ошибка: при выполнении« C: \ Program Files \ Microsoft SQL Server \ 100 \ Tools \ Binn \ SQLCMD.EXE "" "-S server -U user -P pass -i "+ @ [User :: FileNameView]" at "", код выхода процесса был «1», в то время как ожидалось «0» .' –
Правильно ли оценивается выражение? –
Арх - ты прав! Я раньше не использовал «Выполнять задачу процесса», поэтому я неправильно понял, что вы делаете с выражением *. Сейчас он работает правильно. Благодарю. –