Общее число связанных с данным соединением транзакций возвращает свойство

property TransactionCount: Integer;

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

property Transactions [Index: Integer] : TIBTransaction;

Добавить к списку используемых новую транзакцию можно при помощи метода

functionAddTransaction(TR: TIBTransaction) : Integer;

Отменить связь между соединением и компонентом транзакции позволяет метод

procedure RemoveTransaction(Idx: Integer); Но можно поступить и более радикально. Метод procedure RemoveTransactions; отменяет связи со всеми транзакциями.

Используемый в методе RemoveTransaction индекс транзакции может быть найден методом

function Findlransaction (TR: TIBTransaction) : Integer; а метод

function FindDefaultTransaction: TIBTransaction; возвращает транзакцию по умолчанию.

С компонентом соединения можно связать произвольное число объектов, отслеживающих возникновение событий в базе данных InterBase (см. ниже). Для этого используется метод

procedure AddEventNotif ier (Notifier : IIBEventNotif ier) ;

который связывает с соединением либо интерфейс IIBEventNotifier, либо объект TIBEvents. Парный ему метод

procedure RemoveEventNotif ier (Notifier: IIBEventNotifier) ; разрывает связь соединения с объектом-обработчиком событий. Свойство type

TTraceFlag = (tfQPrepare, tfQExecute, tfQFetch, tfError, tfStmt, tfConnect, tfTransact, tfBlob, tfService, tfMisc);
TTraceFlags = set of TTraceFlag;
property TraceFlags: TTraceFlags;

позволяет управлять сведениями о выполнении запросов, возвращаемыми компонентом TSQLMonitor (см. ниже описание этого компонента).

Группа методов позволяет судить о реальном состоянии соединения во время выполнения. Все они в случае неудачи проверки генерируют исключение

EIKlientError.

Методы

prcce±ire CheckActive;

и

procedure Checklnactive;

проверяют, функционирует или нет соединение. Метод

procedure CheckDatabaseName;

проверяет, заполнено ЛИ СЮЙСТЮ DatabaseName.

Компонент TiBDatabase позволяет выполнять некоторые операции с метаданными базы данных.

При помощи метода

procedure CreateDatabase;

можно создавать новые базы данных, включая создание файла базы данных. Все параметры новой базы данных, которые разработчик посчитает нужным указать явно, должны быть включены в список свойства Params (см. выше).

Имя файла новой базы данных должно быть указано в свойстве

EatabaseNaroe. Метод

proce±ire urjriMafcase;

удаляет существующую базу данных, путь к которой указан свойством

ШиаЬазе№те.

Список List имен таблиц, имеющихся в базе данных, возвращает метод

procedure GetTableNames (List: TStrrngs;
SysterOTables: Boolean = False);

При этом параметр SystemTables управляет включением в список имен системных таблиц.

Метод

procedure GetFieldNames(const TableName: string;
List: TStrings);

аналогичным образом возвращает список полей для таблицы, заданной параметром TableName.

Методы-обработчики событий компонента TiBDatabase представлены в табл. 18.1.

Таблица18.1. Методы-обработчикисобытийкомпонентат1В0а1аЬазе

Объявление

Тип

Описание

property MterCcnnect : TNotifyEvent;

Pb

Выполняется после открытия соединения

property Af terDisconnect : TNotifyEvent;

Pb

Выполняется после закрытия соединения

property Bef oreConnect : TNotifyEvent;

Pb

Выполняется перед открытием соединения

property Bef oreDisconnect : TNotifyEvent;

Pb

Выполняется перед закрытием соединения

property OnDialectDowngradeWarning: TNotifyEvent;

Pb

Выполняется в случае изменения диалекта SQL при открытии соединения

property OnldleTimer: TNotifyEvent; |

Pb

Вызывается по истечении времени,заданного свойством IdleTimer

Ttetafcaseii^inEvent = procedure(Database: TiBDatabase;
LoginParams: TStrings) of object;
property QnLogin: TDatabaseLoginEvent;

Pb

Вызывается для регистрации пользователя при открытии соединения

Компонент TIB Transaction


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

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



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

  • Июнь
    2017
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс