Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.05;
Скачать: CL | DM;

Вниз

Доступ к базе нескольких клиентов   Найти похожие ветки 

 
S@shka ©   (2002-07-29 21:10) [0]

Народ есть TIdTCPSERVER при коннекте к которому ...
procedure TIdTCPServerExecute (AThread:TIdThread)
begin
FillDB (athread.connection.readln());
end;
То есть надо проситать данные от клиента и занести в базу
Процедура описана как
procedure FillDb (S;String);
begin
IbTransaction1.StartTransaction;
IbQuery.Sql.Clear;
IbQuery.Sql.Add ("insert into MYTABLE values (:Val)");
IbQuery.ParamByName ("Val").AsString:=S;
IbQuery.ExecSql;
IbTransaction1.Commit;
end;
Все работает если подключается один клиент. Но если их несколько - то для каждого (как видно) создается свой поток в которых вызывается FillDb и естественно все и глохнет. Данные в базу не вставляются.
Как это обойти не знаю.
Заранее спасибо.


 
zalvi   (2002-08-16 09:33) [1]

Каким образом настроено подключение клиентов на удаленных машинах
и на той, где непосредственно находится БД?


 
Reindeer Moss Eater   (2002-08-16 09:45) [2]

Должен быть модуль данных, написанный с учетом Thread Safe. Для каждого соединения создается отдельный его экземпляр. И все работает замечательно. И не забудь про TSession в модуле данных



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

Текущий архив: 2002.09.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
1-14108
Егор
2002-08-23 15:14
2002.09.05
Уникальное имя раздела реестра.


14-14221
Goblinus
2002-08-09 17:32
2002.09.05
Посоветуйте, пожалуйста, компоненту для создания стыкующихся форм


1-14078
***
2002-08-27 10:33
2002.09.05
InstallShield


3-13895
iva
2002-07-31 12:52
2002.09.05
Теряются изменения в базе.


1-14072
djonny
2002-08-26 22:41
2002.09.05
Как работать с диалогом, находящимся в ресурсе.