Поделиться через


Использование методов ручного доступа

При обработке неизвестной команды нужно выполнить четыре действия:

  • Определить параметры.

  • Выполнить команду.

  • Определить выходные столбцы.

  • Проверить, не возвращается ли несколько наборов строк.

Чтобы сделать это при помощи шаблонов потребителей OLE DB, используйте класс CManualAccessor и выполните следующие действия:

  1. Откройте объект CCommand, указав в качестве параметра шаблона класс CManualAccessor.

    CCommand<CManualAccessor, CRowset, CMultipleResults> rs;
    
  2. Запросите сеанс для интерфейса IDBSchemaRowset и используйте набор строк параметров процедуры. Если интерфейс IDBSchemaRowset недоступен, запросите интерфейс ICommandWithParameters. Для получения необходимых сведений вызовите функцию GetParameterInfo. Если интерфейсы недоступны, то можно предположить, что параметров нет.

  3. Чтобы добавить параметры и задать их значения, следует вызвать для каждого параметра функцию AddParameterEntry.

  4. Откройте набор строк, но при этом присвойте параметру привязки значение false.

  5. Вызовите функцию GetColumnInfo для получения сведений о выходных столбцах. Для добавления выходного столбца в состав привязки вызовите функцию AddBindEntry.

  6. Вызовите функцию GetNextResult, чтобы определить, есть ли еще доступные наборы строк. Повторите шаги с 2 по 5.

Использование класса ручного доступа демонстрируется в процедуре CDBListView::CallProcedure примера DBVIEWER.

См. также

Основные понятия

Использование методов доступа