Как определить количество строк в наборе данных служб SSIS - PullRequest
6 голосов
/ 22 февраля 2010

Я часто сталкиваюсь с ситуацией в пакетах служб SSIS, когда я запускаю команду SQL для возврата набора строк из соединения ADO. Есть случаи, когда я хочу разветвляться в зависимости от количества возвращенных строк. Набор результатов ado хранится в типе данных «объект» служб SSIS. Есть ли способ выражения SSIS или компонента Script, чтобы получить это количество строк?

Ответы [ 2 ]

13 голосов
/ 23 февраля 2010

Вместо использования задачи «Выполнение Sql» используйте задачу потока данных, подобную этой.

  1. Использование исходного компонента для получения ваших данных
  2. Используйте компонент rowcount для сохранения вашего rowcount в переменной
  3. Используйте целевой компонент набора записей и сохраните его в исходной переменной (тип system.object)

Затем вернитесь к потоку управления и продолжайте, как вы планировали, используя переменную rowcount для ветвления потока управления.

0 голосов
/ 03 марта 2010

Вы можете создать ограничение приоритета после задачи «Выполнение SQL» для переменной типа данных объекта, @ [User :: objectvariable]> 0 в качестве выражения в ограничении приоритета. Однако в «Выполнении задачи SQL» вы получите набор результатов для переменной объекта.

...