Ошибка выполнения задачи SQL -

Я получаю следующую ошибку, когда вызываю сохраненную процедуру в задаче выполнения sql в SSIS. Описание: Выполнение запроса «Exec up_CallXXX» завершилось неудачно со следующей ошибкой: «Неверный синтаксис рядом с '13'.». Возможные причины сбоя: проблемы с запросом, свойство «ResultSet» неправильно задано, параметры установлены неправильно или соединение не установлено правильно ". Вот как это устроено:

ResulSet: None ConnectionType: OLE DB SQLSourceType: Прямой ввод SQL-запрос: Exec up_CallXXX IsQueryStoredProcedure: False BypassPrepare: True

Сохраненная процедура работает нормально, когда я выполняю ее через SSMS. Кто-нибудь знает, что происходит.

Спасибо!


person sharadov    schedule 15.04.2010    source источник
comment
вы можете опубликовать хранимую процедуру или, по крайней мере, запрос, который завершился ошибкой?   -  person Leslie    schedule 15.04.2010
comment
Окно не позволит мне опубликовать текст всей сохраненной процедуры.   -  person sharadov    schedule 15.04.2010
comment
Появляется ли статическое значение 13 в тексте хранимой процедуры?   -  person Ed Harper    schedule 16.04.2010
comment
Неа. Я могу выполнить процедуру самостоятельно в SSMS, но когда я вызываю ее через задачу execute sql, она выдает ошибку, указанную выше   -  person sharadov    schedule 17.04.2010


Ответы (1)


На самом деле это не полный ответ, но самый быстрый способ устранения этой проблемы, вероятно, будет заключаться в захвате команды, которую SSIS фактически пытается выполнить с помощью трассировка профилировщика SQL, поскольку я думаю, что SSIS использует sp_executesql для выполнения задач« Выполнение SQL ».

Когда у вас есть текст запроса, который работает SSIS, вы можете обнаружить, что можете реплицировать ошибку, если выполните ее в SSMS.

У меня была такая проблема, когда параметры сеанса для моего сеанса SSMS отличаются от параметров сеанса, используемых SSIS / SSRS. Учитывая сообщение об ошибке, возможно, стоит проверить значения SET QUOTED IDENTIFIER в обоих сеансах, но это предположение.

person Ed Harper    schedule 16.04.2010
comment
Я пробовал его отследить. Но все записи трассировки - это Exec up_CallXXX в текстовых данных. Нет информации об ошибке. или понять, что и где он терпит неудачу. - person sharadov; 20.04.2010
comment
@sharadov - вы сравнивали настройки сеанса для выполнения SSIS с настройками SSMS? Найдите в трассировке профилировщика событие входа в систему аудита, соответствующее выполнению пакета. - person Ed Harper; 20.04.2010
comment
@sharadov - ваш ИП выполняет динамический SQL? Это могло бы быть альтернативным объяснением сообщения об ошибке при выполнении в SSIS. - person Ed Harper; 20.04.2010