Использование нескольких результирующих наборов одной хранимой процедуры
Обновлен: Ноябрь 2007
Большинство хранимых процедур возвращают несколько результирующих наборов. Подобные хранимые процедуры обычно включают одну или несколько инструкций select. Это должно учитываться при обработке объектом-получателем всех результирующих наборов.
Обработка нескольких результирующих наборов
Создайте класс CCommand с классом CMultipleResults в качестве аргумента шаблона и методом доступа на собственное усмотрение. Как правило, это динамический метод доступа или метод доступа вручную. При использовании методов доступа иных типов определение выходных столбцов для каждого набора строк может оказаться невозможным.
Запустите хранимую процедуру на выполнение обычным образом и произведите связывание столбцов (см. раздел Инструкции по выполнению выборки данных).
Используйте данные.
Вызовите метод GetNextResult для класса CCommand. Если имеется еще один результирующий набор строк, метод GetNextResult вернет значение S_OK и при использовании метода доступа вручную потребуется произвести повторное связывание столбцов. Если метод GetNextResult возвращает ошибку, результирующих наборов больше нет.