Вниз
Скачать: CL | DM;

Востановление работы после обрава соединения(IBX)   Найти похожие ветки 

 
Stanly ©   (2003-07-18 10:40) [0]

Кто-нибуть сталкивался с такой проблемой, что при первом вызове IBDataset.Open() после подсоединения к новой базе после обрыва соединения со старой, IBDataset ничего не возвращает. После повторного вызова IBDataset.Open() все нормально все поля заполнены.


 
Johnmen ©   (2003-07-18 11:22) [1]

Теперь медленно и конкретно...


 
Stanly ©   (2003-07-18 11:36) [2]

Есть программа, которая держит открытым соединение с базой, т.е. что читает или пишит в нее. Может получиться так что сервер может отвалиться от сети. При этом программа принудительно закрывает отвалившееся соединение так IBDatabase.ForceClose();
Прибивает все транзакции. Далее прога коннектитса к резервной базе, с помощью того же IBDatabase. Проблема в том что после такого востановления IBDataset востанавливается как-то не правильно, он при первом вызове IBDatabase.Open() компонент ничего невозвращает, это хорошо видно по пустому DBGrid. но при тутже повторном вызове, т.е. IBDatabase.Close(); IBDatabase.Open;
DBGrid заполняется.
Как победить эту ошибку или в какую сторону копать?


 
Johnmen ©   (2003-07-18 12:07) [3]

>..., он при первом вызове IBDatabase.Open() компонент ничего невозвращает,...

А почему он должен что-то возвращать, если неактивен ?
Или же он у тебя активизируется после установки соединения ?
Смотри, как у тебя прописаны события Open, Close для IBDatabase...


 
Stanly ©   (2003-07-18 13:30) [4]

Когда про вызовы писал перепутал IBDatabase c IBDataset, мда неувязочка вышла. Так что методы Close и Open я для IBDataset вызываю :-) А IBDatabase к этому моменту уже подключен к резервной базе.


 
Johnmen ©   (2003-07-18 13:40) [5]

В BeforeConnect для IBDatabase пропиши IBDataSet.Close



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
7-33386
boa
2003-05-29 11:25
2003.08.11
Вопрос по TService


6-33239
Smile
2003-06-04 08:48
2003.08.11
Отправка файла NMStrm


4-33410
sucer
2003-06-07 18:46
2003.08.11
Недать нарисоваться на экране


4-33402
kullibin
2003-06-10 15:58
2003.08.11
Сообщение


1-33185
qwe
2003-07-28 20:17
2003.08.11
запуск через сеть




   Наверх