Команды и таблицы
Обновлен: Ноябрь 2007
Команды и таблицы позволяют обращаться к наборам строк, то есть открывать их, выполнять команды и связывание столбцов. Классы CCommand и CTable создают объекты command и table соответственно. Эти классы являются производными от CAccessorRowset, как показано на следующем рисунке.
Классы команд и таблиц
Тип TAccessor, показанный в предыдущей таблице, может быть любым типом метода доступа из перечисленных в разделе Типы методов доступа. Тип TRowset может быть любым типом набора строк из перечисленных в разделе Типы набора строк. Тип TMultiple указывает тип результата (один или несколько результирующих наборов).
Мастер потребителей OLE DB библиотеки ATL позволяет указать, необходимо ли использовать объект command или table.
Для источников данных без объектов command можно использовать класс CTable. Обычно он применяется к простым наборам записей, для которых не указываются параметры и не требуется нескольких результатов. Этот простой класс открывает объект table в источнике данных с помощью указанного имени объекта table.
Для источников данных, поддерживающих объекты command, также можно использовать класс CCommand. Чтобы выполнить команду, следует вызвать функцию Open для этого класса. В качестве альтернативы можно использовать функцию Prepare для подготовки команды, которую необходимо выполнить более одного раза.
Класс CCommand имеет три аргумента шаблона: тип метода доступа, тип набора строк и тип результатов (CNoMultipleResults, используемый по умолчанию, или CMultipleResults). Если используется CMultipleResults, класс CCommand поддерживает интерфейс IMultipleResults и обрабатывает несколько наборов строк. В примере DBVIEWER показано, как обрабатывать несколько результатов.