задает способ управления транзакциями при их фиксации и откате:

□ xaCommitRetaining - после фиксации очередной транзакции автоматически начинается выполнение новой;

□ xaAbortRetaining - после отката очередной транзакции автоматически начинается выполнение новой.

Наборы данных ADO

На странице ADO Палитры компонентов Delphi, кроме компонентов соединения есть стандартные компоненты, инкапсулирующие набор данных и адаптированные для работы с хранилищем данных ADO (рис. 19.7). Это компоненты:

П TADODataSet - универсальный набор данных;
□ TADOTabie - таблица БД;
□TADOQuery - запрос SQL;

О TADOstoredProc - хранимая процедура.

Как и положено для компонентов, инкапсулирующих набор данных, их общим предком является класс TDataSet, предоставляющий базовые функции управления набором данных (см. гл. 11).

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

Рис. 19.7. Иерархия классов наборов данных ADO

Компоненты ADO обладают обычным набором свойств и методов, а необходимый для доступа к данным через ADO механизм наследуют от своего общего предка - класса TCustomADODataSet Кроме этого, класс TCustomADODataSet содержит ряд общих для всех потомков свойств и методов, рассмотреть которые будет очень полезно. Поэтому сначала мы изучим класс TCustomADODataSet и только потом перейдем к компонентам ADO.

Класс TCustomADODataSet

Класс TCrjstomADODataSet инкапсулирует механизм доступа к хранилищу данных через ADO. Этот класс наполняет абстрактные методы общего предка TDataSet функциями конкретного механизма доступа к данным.

Поэтому здесь мы рассмотрим только уникальные свойства и методы класса TCustomADODataSet, обеспечивающие работу с ADO.

Соединение набора данных с хранилищем данных ADO осуществляется через компонент TADOConnection (свойство Connection) или путем задания параметров соединения через свойство connectionstring (см. выше).

Наборданных

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

type TADOLockType = (ltUnspecified, ltReadOnly, ltPessimistic, ltOptimistic, ltBatchOptimistic) ;
property LockType: TADOLockType;
ltUnspecified - блокировка задается источником данных, а не компонентом;
ltReadOnly - набор данных откроется в режиме только для чтения;
ltPessimistic - редактируемая запись блокируется на все время редактирования до момента сохранения в хранилище данных;
ltOptimistic - запись блокируется только на время сохранения изменений в хранилище данных;

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

( Примечание j

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

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

property Active: Boolean;

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

TObjectState = (stClosed, stOpen, stConnecting, stExecuting, stFetching) ;
TObjectStates = set of TObjectState;

⇐ Предыдущая страница| |Следующая страница ⇒

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



Новости за месяц

  • Октябрь
    2017
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс