Симптомы: имеется совершенно правильно сконфигурированный Data Source в Data Flow Task, который, однако, не возвращает никаких данных. При ближайшем рассмотрении выясняются любопытные вещи:
1. SSIS выполняет sp_prepare для SQL statement, что выглядит примерно так:
и выполняет его, что выглядит так. Однако, можно видеть, что CPU, Reads, Writes отсутствуют:
Оказывается, что SSIS не может распознать наличия комментариев в SQL-statement и подвержен багу, подобному SQL-injection. Смотрите, что происходит в момент query validation:
SSIS включает FMTONLY для того, чтобы проверить метаданные, но из-за наличия комментария в этой строчке не может его выключить. При включенном FMTONLY данные не возвращаются.
Пока не видел, чтобы Microsoft обнаружил и/или исправил эту проблему. Пока этого не случилось, избегайте использовать комментарии в SSIS SQL Statements.
Комментариев нет:
Отправить комментарий