Программирование на Delphi 7


         

Команды



Команды


Программные средства ADO были бы неполными, если бы не имели возможности использовать для работы с данными язык SQL. Операторы DML и DDL, ряд специальных операторов ADO носят общее название текстовых команд.

Объект-команда инкапсулирует саму текстовую команду и механизм обработки и передачи команды. Объект команды выполняет следующие операции:

  •  разбор текста команды;
  •  связывание команды с источником данных;
  •  оптимизацию команды;
  • передачу команды источнику данных.

Главный интерфейс объекта команды icommand имеет три метода:

  •  function Cancel: HResult; stdcall;

отменяет выполнение команды;

  •  function Execute(const punkOuter: lUnknown; const riid: TGUID; var pParams: DBPARAMS; pcRowsAffected: PInteger; ppRowset: PlUnknown): HResult; stdcall;

исполняет команду;

  •  function GetDBSession(const riid: TGUID; out ppSession: lUnknown): HResult; stdcall;

возвращает ссылку на интерфейс сессии, вызвавший данную команду.

Помимо основного, объект команды обеспечивает доступ к дополнительным интерфейсам:

  •  ICommandPrepare — содержит два метода (Prepare И Unprepare) для подготовки команды;
  •  icommandProperties — задает для команды свойства, которые должны поддерживаться возвращаемым командой набором данных;
  •  iCommandText — управляет текстом команды (этот интерфейс обязателен для объекта команды);
  •  icommandwithParameters — обеспечивает работу с параметрами команды.


Содержание раздела