Вниз
Скачать: 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.99 c
6-33250
ALeXiuS
2003-06-05 13:34
2003.08.11
Сокеты ERROR 10055, диплом горит


14-33292
Igor__
2003-07-23 22:30
2003.08.11
Сервисы


14-33346
fofa
2003-07-25 13:16
2003.08.11
Где взять лицензию на InterBase 6.0.1хххх (-)


14-33268
VEG
2003-07-25 22:12
2003.08.11
Опять проблема в Си, только странная...


14-33287
Appa
2003-07-24 07:42
2003.08.11
Подарите пожалуста хорошую доку




   Наверх