Иллюстрированный самоучитель по Delphi

Меню

 
Главная
Assembler
Turbo Pascal
C++ Builder
Delphi
Java
Скачать


Статистика

 

   


Реклама

 
выбрать кондиционер мобильный Москва кондиционер сплит система

 

 

 

Набор данных

 

Перед открытием набора данных необходимо установить тип используемой при редактировании записей блокировки. Для этого применяется свойство

type TADOLockType = (ItUnspecified, ItReadOnly, ItPessimistic, ItOptimistic, ItBatchOptimistic); property LockType: TADOLockType;

ItUnspecified — блокировка задается источником данных, а не компонентом; 

ItReadOnly — набор данных откроется в режиме только для чтения;

ItPessimistic — редактируемая запись блокируется на все время редактирования до момента сохранения в хранилище данных;

ItOptimistic — запись блокируется только на время сохранения изменений в хранилище данных;

ItBatchOptimistic — запись блокируется на время сохранения в хранилище данных при вызове метода updateBatch.

 Примечание 

Для того чтобы установка блокировки сработала, свойство LockType должно быть обязательно модифицировано до открытия набора данных.

Набор данных открывается методом Open и закрывается методом close. Также можно использовать свойство

property Active: Boolean;

Текущее состояние набора данных можно определить свойством

type

TObjectState = (stClosed, stOpen, stConnecting, stExecuting, stretching);

TObjectStates = set of TObjectState;

property RecordsetState: TObjectStates;

Набор данных в компонентах ADO основан на использовании объекта набора записей ADO, прямой доступ к этому объекту возможен при помощи свойства

property Recordset: _Recordset;

Но поскольку все основные методы интерфейсов объекта набора записей ADO перекрыты методами класса, в обычных случаях прямой доступ к объекту вам не понадобится. После обновления набора данных вызывается метод-обработчик

TRecordsetEvent = procedure(DataSet: TCustomADODataSet; const Error: Error;

 var EventStatus: TEventStatus) of object; property OnFetchComplete: TRecordsetEvent;

где Error — ссылка на объект ошибки ADO, если она возникла.

Если же набор данных работает в асинхронном режиме, при обновлении вызывается метод-обработчик

TFetchProgressEvent = procedure(DataSet: TCustomADODataSet;

Progress, MaxProgress: Integer;

var EventStatus: TEventStatus) of object; 

property OnFetchProgress: TFetchProgressEvent;

где параметр Progress показывает долю выполнения операции.

 

Copyright legioner © intbook.info, 2007