На этом шаге мы рассмотрим компонент TADOCommand.
Компонент TADOCommand предназначен в основном для выполнение команд, не возвращающих результаты,
таких как SQL-операторы языка определения данных DDL (Data Definition Language).
К предложениям DDL относятся практически все запросы, которые не начинаются зарезервированным
словом Select.
Текст исполняемой команды хранится в свойстве CommandText. За один прием компонент TADOCommand
способен исполнить только одну команду.
При некоторых обстоятельствах компонент TADOCommand способен возвращать результаты. Для
этого в него включены три реализации метода Execute, две из которых как раз и предназначены для
создания набора записей.
Использование возвращаемого набора данных возможно с помощью компонента-посредника TADODataSet:
ADODataSet1.RecordSet:=ADOCommand1.Execute;
Множество ExecuteOptions при этом должно содержать значение eoExecuteNoRecords.
Особенностью компонента TADOCommand является специализированный текстовый редактор, с помощью
которого можно сформировать команду. Этот редактор (рисунок 1) вызывается щелчком на кнопке с многоточием в
стороке свойства CommandText инспектора объектов.
Рис. 1. Редактор команды компонента TADOCommand
Все окно редактора поделено на три части. В левой верхней части отображается список таблиц базы данных, с которой
связан компонент, в нижней левой - список полей для выделенной таблицы, всю остальную часть занимает собственно
текстовый редактор. Справочные окна в левой части лишь облегчают набор текста, который в основном формируется
вручную в правом поле.
Свойства компонента TADOCommand приведены в таблице 1.
Таблица 1.Свойства компонента TADOCommand
Свойство | Описание |
---|---|
property CommandText: WideString; | Указывает, какая команда должна выполняться с помощью метода Execute. Это может быть строка, содержащая SQL-оператор, имя таблицы или хранимой процедуры. Для обеспечения более высокой производительности необходимо указывать тип команды в свойстве CommandType. |
property CommandTimeout: Integer; | Указывает количество времени в секундах, после которого команда будет отменена, по умолчанию 30 с. |
property CommandType: TCommandType; | Определяет тип команды, заданной в свойстве CommandText. Возможные значения:
|
property Connection: TADOConnection; | Используется для указания компоненты TADOConnection, предназначенной для соединения с базой данных. |
property ConnectionString: WideString; | Используется для указания подробной информации о соединениях с источником данных. Применяется вместо использования компонента TADOConnection. |
property ExecuteOptions: TExecuteOptions; | Используется для установки режимов, влияющих на выполнение команды, указанной в свойстве CommandText. Возможные значения:
|
property Parameters; | Используется для установки значений параметров, необходимых для выполнения SQL-запроса или же хранимой процедуры. |
property Prepared: Boolean; | Значение данного свойства нужно установить в True, перед вызовом команды, для указания того, что скомпилированная версия данной команды перед выполнением должна быть сохранена для ускорения последующих вызовов. |
На следующем шаге мы рассмотрим класс TCustomADODataSet.