- •Технология автоматизации - ole Automation.
- •Методы взаимодействия с сервером автоматизации.
- •Компоненты системы Delphi для взаимодействия с серверами автоматизации msOffice.
- •Технология ActiveX.
- •Реализация технологии ado.
- •Компонент tadoDataSet.
- •Особенности компонентов ado.
- •Технология Inter Base Express (ibx).
Технология Inter Base Express (ibx).
Фирма Borlandразработала IBX, которая предназначена для создания тонкого клиента. С этой целью программисту предоставляется возможность использовать непосредственный доступ к серверу InterBase без участия BDE или аналогичных средств доступа к данным. Характерной особенностью IBX является создание соединения с БД, которая достигается с помощьюдвух компонентов:
IBDataBase
IBTransaction
Эти компоненты, как и прочие компоненты, поддерживающие IBX, находятся на странице с ярлыком InterBase палитры компонентовBuilder(Delphi).
Соединение компонентов IBXс БД осуществляется через компонентIBDataBase. Он выполняет для компонентов IBX функции, во многом аналогичные тем, которые выполняются компонентомADOConnectionдля компонентовADO. БД, с которой осуществляется соединение, задаётся свойствомDatabaseName.
Компонент IBTransactionпозволяет организовать транзакции.
При использовании технологии InterBase Express для взаимодействия с сервером InterBase хотя бы один компонент типа IBTransaction должен быть связан с компонентом IBDataBase. Причем в ИС с многоуровневой архитектурой каждый SQL-запрос будет исполняться в отдельной транзакции. Транзакция, которая представляется компонентом IBTransaction автоматически стартуется или начинается в момент активизации этого компонента.
1) Активизация компонента IBTransaction происходит при открытии компонента типа IBTable, которая осуществляется установка свойства Active=Trueили с помощью методаOpen.
2) Другим способом начать транзакцию является использование метода StartTransaction, который имеется у компонента TIBTransation - явное начало транзакции. Только после начала транзакции можно выполнять операции с базами данных.
С помощью метода Commit компонента TIBTransation можно завершить транзакцию и происходит отключение от таблиц.
Rollback- откат транзакции для отмены изменения, в результате база возвращается в исходное состояние (до начала транзакции) и транзакция завершается.
Поскольку транзакции не могут быть вложенными, то нельзя допускать последовательного выполнения метода, который открывает таблицу, соединенную с транзакцией, и метода, начинающего транзакцию.
Таким образом организация транзакции осуществляется по следующей схеме:
IBDatabase1->Open();
DataModule2->IBTransaction1->StartTransaction();
. . .
операторы изменения данных в БД
. . .
if(<запрос на фиксацию изменений>)
IBTransaction1->Commit();
else
IBTransaction1->Rollback();