![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите с IBDatabase [D7, IB6.x]
ILUHA © (2004-10-17 17:22:00)Подскажите пожалуйста в компоненте IBDatabase встроен ли собственный компонент Transaction потому что когда набераю Showmessage(Inttostr(IBDatabase1.TransactionCount) ) то выдает что имеется 1. И пробывал просто поместить на Form IBDatabase не устанавливая ни каких установок и неставя на Форму IBTransaction и выполняю Опять: Showmessage(Inttostr(IBDatabase1.TransactionCount) ) и все равно выдает 1 и поэтому у меня сложилось впечатление что в компоненте IBDatabase компонент IBtransaction уже встроен.Подскажите так это или нет.И если это не так то напишите почему выдает 1 хотя на форме нет ни одного компонента IBTransaction
ILUHA (2004-10-18 03:46:00) [1]Теперь понял зачем эта транзакция. А вот допустим если я делаю метод IBDatabase1.RemoveTransactions то удаляет все транзакции и очищает список Transaction. А можно как нибудь ее снова добавить.
S@shka (2004-10-17 22:59:00) [2]To > jack128
:)
jack128 (2004-10-17 21:50:00) [3]смотрим в исходники IbDatabase и видим:
constructor TIBDatabase.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
...
FInternalTransaction := TIBTransaction.Create(self);
FInternalTransaction.DefaultDatabase := Self;
...
end;
используется эта транзакция в методах GetTableNames и GetFieldNames...
в общем http://www.delphimaster.ru/cgi-bin/anketa.pl?id=1087039622смотрим интересное о себе..
term (2004-10-17 20:26:00) [4]тебе это так гипотетически или ты решаеш задчу какуюто ???
да и к томуже действительно странно если ты не одной транзакции с ним не связал
ILUHA (2004-10-17 18:11:00) [5]Вот так и мучуюсь думая зачем эта транзакция там нужна, какаю функцию там выполняет
ILUHA (2004-10-17 18:07:00) [6]Вот и я в замешательстве не как не могу понять Почему. Единственное что приходит на ум это что у него есть транзакция которая которая обеспечивает взаимодействие компонента IBDatabase c СУБД т.е помогает открыть данную базу данных.
Но немного узнать об этой транзакции можно с помощью showmessage(IBDatabase1.Transaction[0].DefaultDatabase.Name).
kein (2004-10-17 17:57:00) [7]действительно странно. видимо неправильно работает счетчик транзакций т.к. попытки что получить доступ к той 1 транзакции заканчиваются неудачей, т.е. её там нет.