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


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

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

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

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

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

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

Чтобы сделать это при помощи шаблонов потребителей 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.

См. также

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

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