Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Дисконнект


new_chel ©   (2007-08-17 14:44:00) 

Такая проблема: часто обрывается сеть на короткий промежуток времени, в результате чего клиенты не могут продолжить добавлять данные в базу, приходится заново коннектится и начинать сначала. Существует ли у компонентов ibDatabase какой-нибудь request timeout, чтобы некоторое время висеть на оборвавшемся соединении, а после этого восстанавливать его и ловить незавершенную транзакцию?
firebird 2.0


new_chel   (2007-08-24 13:03:00) [1]

ок. всем спасибо


Sergey13   (2007-08-17 16:00:00) [2]

> [5] Desdechado ©   (17.08.07 15:49)

Переделывать на честную трехзвенку готовый (как я понял) продукт дольше.


Desdechado   (2007-08-17 15:49:00) [3]

> "накапливать" вводимые данные в некоей отсоединенной от БД структуре
Так это и есть основной принцип тонкого клиента в 3-звенке.


Sergey13   (2007-08-17 15:23:00) [4]

> [0] new_chel   (17.08.07 14:44)
> и ловить незавершенную транзакцию?

Понравилось выражение. 8-)
А если не поймаешь? Откатывать ненайденную? 8-)

Вообще я за
> [2] Jeer ©   (17.08.07 15:11)

Можно попробовать "накапливать" вводимые данные в некоей отсоединенной от БД структуре (типа CDS или таблиц в памяти) и "выстреливать" их скопом после окончательного ввода и/или по мере накопления. Но это не есть хорошо и надо подходить к этому очень осторожно, строго соблюдая логику хранения данных.


Desdechado   (2007-08-17 15:19:00) [5]

> восстанавливать его и ловить незавершенную транзакцию?
При потере соединения сервер откатывает изменения. И "поймать" уже ничего нельзя.

В твоем случае можно попробовать 3-звенку, когда сервер приложений стоит рядом с сервером БД. Как частный случай - терминальная сессия, которую можно восстановить при обрыве соединения и продолжить с места разъединения.


Jeer   (2007-08-17 15:11:00) [6]


> часто обрывается сеть на короткий промежуток времени


Отрывать все, что выступает у тех, кто не должен этого допускать по служебным функциям.


new_chel   (2007-08-17 15:09:00) [7]

кто-нибудь помогите, плиз


Наверх

Титульная страница Поиск, карта сайта Написать письмо