Форум: "Базы";
Текущий архив: 2003.08.11;
Скачать: [xml.tar.bz2];
ВнизВостановление работы после обрава соединения(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 вся ветка
Форум: "Базы";
Текущий архив: 2003.08.11;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c