Для обеспечения скорости выполнения запроса из компонента удалены все дополнительные механизмы, обслуживающие набор данных. Фактически компонент
 TIBSQL не имеет отношения к обычным компонентам доступа к данным, его непосредственным предком является класс
icomponent, а не TDataSet. Поэтому он только передает через компонент соединения
 TiBDatabase запрос серверу и получает назад результат выполнения запроса.
Для повышения скорости компонент не обеспечивает полноценной навигации по набору данных. Перемещение по набору данных возможно только в прямом направлении (однонаправленный курсор).
Возвращаемые набором данных текущие значения полей содержатся не в привычном наборе объектов полей
TField, а в объекте  TIBXSQLDA (см. выше).
Так как структура  XSQLDA создается сервером при выполнении запроса, существенно уменьшается время открытия набора данных компонента.
| 
 | 
 | 
 | 
| 
 | 
| 
 | 
 | 
Значение  True говорит о том, что курсор находится в начале набора данных
 
 
 | 
property Database: TiBDatabase;
 
 
 | 
 | 
Определяет компонент соединения с базой данных
 
 
 | 
property DBHandle: PISC   DB_HANDLE;
 
 
 | 
 | 
Указатель API на объект базы данных
 
 
 | 
| 
 | 
 | 
Значение  True говорит о том, что курсор находится в конце набора данных
 
 
 | 
property Fieldlndex: [FieldName:   String]: Integer;
 
 
 | 
 | 
Список порядковых номеров полей по их именам
 
 
 | 
property Fields [const Idx: Integer] :   TIBXSQLVAR;
 
 
 | 
 | 
Индексированный список структур XSQLVAR, хранящих значения полей набора данных
 
 
 | 
property GenerateParamNames : Boolean;
 
 
 | 
 | 
Установка свойства в значение  True приводит к созданию списка имен параметров запроса в свойстве
 Params
 
 
 | 
property GoToFirstRecordOnExecute : Boolean;
 
 
 | 
 | 
Значение  True обеспечивает установку курсора на первую запись набора данных при его открытии
 
 
 | 
property Handle: TISC  STMT HANDLE;
 
 
 | 
 | 
Содержит указатель API на запрос
 
 
 | 
 | 
 | 
Позволяет определить, открыт ли набор данных
 
 
 | 
property ParamCheck: Boolean;
 
 
 | 
 | 
Позволяет определить, был ли заново  сгенерирован список параметров запроса при изменении его текста во время выполнения
 
 
 | 
property Params: TIBXSQLDA;
 
 
 | 
 | 
Область дескрипторов запроса (см. выше)
 
 
 | 
| 
 | 
 | 
 Содержит план запроса после его  подготовки
 
 
 | 
property Prepared: Boolean;
 
 
 | 
 | 
 Значение  True сообщает о том,  что запрос готов к выполнению
 
 
 | 
property RecordCount: Integer;
 
 
 | 
 | 
Возвращает число записей набора данных
 
 
 | 
property RowsAf fected: Integer;
 
 
 | 
 | 
Возвращает число записей,  обработанных запросом
 
 
 | 
| 
 | 
 | 
 | 
property SQLType: TIBSQLTypes read FSQLType;
 
 
 | 
 | 
Возвращает тип запроса (см. табл. 24.5)
 
 
 | 
property Transaction: TIBTransaction;
 
 
 | 
 | 
Указывает на компонент транзакции
 
 
 | 
property TRHandle: PISC_TR_HANDLE;
 
 
 | 
 | 
Содержит указатель API на транзакцию, в которой работает запрос
 
 
 | 
property UniqueRelationName : String;
 
 
 | 
 | 
Возвращает уникальное внутреннее имя запроса
 
 
 | 
| 
 | 
procedure Batchlnput ( InputOb ect: TIBBatchlnput);
 
 
 | 
 | 
Выполняет запрос с параметрами для переноса в объект
 Inputobject
 
 
 | 
procedure BatchOutput (Output Object : TIBBatchOutput) ;
 
 
 | 
 | 
Выполняет запрос с параметрами для переноса в объект
 OutputObject
 
 
 | 
function Call (ErrCode: ISC_STATUS; RaiseError: Boolean): ISC STATUS;
 
 
 | 
 | 
Возвращает текст сообщения об ошибке по ее коду
 ErrCode
 
 
 | 
| 
 | 
 | 
Вызывает исключение, если набор данных открыт
 
 
 | 
 | 
 | 
Вызывает исключение, если набор данных закрыт
 
 
 | 
procedure CheckValidStatement;
 
 
 | 
 | 
Вызывает исключение, если запрос некорректен
 
 
 | 
| 
 | 
 | 
 | 
function Current:   TIBXSQLDA;
 
 
 | 
 | 
Ссылка на область дескрипторов запроса
 
 
 | 
| 
 | 
 | 
 | 
function FieldByName [FieldName: String]:   TIBXSQLVAR;
 
 
 | 
 | 
Возвращает структуру  XSQLVAR по имени поля
 
 
 | 
| 
 | 
 | 
Освобождает ресурсы, занятые запросом
 
 
 | 
function Next:   TIBXSQLDA;
 
 
 | 
 | 
Возвращает область дескрипторов для следующей записи
 
 
 | 
| 
 | 
 | 
Готовит запрос к выполнению
 
 
 | 
Методы-обработчики событий
 
 
 | 
property OnSQLChanging: TNotifyEvent;
 
 
 | 
 | 
Вызывается при изменении запроса
 
 
 | 
Текст запроса задается обычным для всех компонентов запросов свойством SQL. Для выполнения запроса используется также знакомое свойство
EXGCSQL. После этого можно обращаться к созданному компонентом набору данных. Значения полей из текущей записи доступны через свойство
Fields. Обратите внимание, что это не объекты типа
TFields, а структуры  XSQLVAR из области дескрипторов.