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

Вниз

Обрыв соединения с БД Interbase   Найти похожие ветки 

 
suharew   (2005-09-05 13:35) [0]

Добрый день. Пишу следущее

 if form1.IBTransaction1.InTransaction then
   begin
     form11.IBtable1.Edit;
     form11.IBtable1["adr"]:=trim(adr);
     form11.IBtable1["dom"]:=trim(dom);
     form11.IBtable1["kom"]:=trim(dopkom);
     form11.IBtable1.Post;
     form1.IBTransaction1.Commit;
     form1.IBTransaction1.Active:=true;
   end;


или SQL запрос, неважно.
Все таблицы закрываются. Я так понял это связано с транзакцией как-то. Только не могу понять как? Если без транзакции то все нормально. Почему связь обрывается.


 
Sergey13 ©   (2005-09-05 13:44) [1]

CommitRetaining


 
Zacho ©   (2005-09-05 14:06) [2]

suharew   (05.09.05 13:35)

Внимательно читай http://www.ibase.ru/devinfo/ibx.htm

Я же уже давал тебе эту ссылку.


 
Zacho ©   (2005-09-05 14:16) [3]

2 suharew:
Да, ещё раз повторю: не стоит использовать TIBTable.


 
Os   (2005-09-05 15:33) [4]

Если IBTransaction1 - общий, то зачем if

    form11.IBtable1.Edit;
    form11.IBtable1["adr"]:=trim(adr);
    form11.IBtable1["dom"]:=trim(dom);
    form11.IBtable1["kom"]:=trim(dopkom);
    form11.IBtable1.Post;

Если IBTransaction1 для IBTable1 то наверно

 try
   IBTransaction.StartTransaction;
   form11.IBTable1.Edit;
   .........
   IBTransaction.Commit;
 except IBTransaction.RollBack;
 end;

Чем раньше перейти на TIBQuery тем меньше переделывать потом.


 
suharew   (2005-09-06 17:34) [5]

Я уже перешел на IBQuery.
Только вот вопрос опять по транзакциям
У меня на всех IBQuery назначен один IbTransaction.
Как правильно оформлять SQL запрос с транзакцией. Яделаю так.

....
form1.IbQuety.Sql.Add("insert into basa (data,wrem) values(:data,:wrem)");
if form1.IBTransaction1.InTransaction then
  begin
    form1.IBQuery1.ExecSQL;
    form1.IBTransaction1.Commit;
    form1.IBTransaction1.Active:=true;
  end;


Или как написал Os (05.09.05 15:33) [4] через Try ..Except


 
Zacho ©   (2005-09-07 08:37) [6]

suharew   (06.09.05 17:34) [5]

Надо стартовать и завершать транзакции когда тебе нужно. Не зная твоей задачи ничего конкретного сказать нельзя.
Изучи внимательно статьи на http://www.ibase.ru/develop.htm , особенно http://www.ibase/ru/devinfo/ibx.htm
Ещё не помешало бы изучить что-либо по теории РСУБД, например К.Дж.Дейт "Введение в системы баз данных"



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

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

Наверх




Память: 0.48 MB
Время: 0.032 c
6-1120095885
vidiv
2005-06-30 05:44
2005.10.16
освобождение памяти после gethostbyname


14-1127557420
alexbou
2005-09-24 14:23
2005.10.16
Delphi 2005 Update 4 Release Candidate ???


14-1127394433
Narik
2005-09-22 17:07
2005.10.16
дата время и тд из FileListBox и DirectoryListBox


14-1127580199
Иван Шихалев
2005-09-24 20:43
2005.10.16
Дейкстра и Вирт в электронном виде


1-1127510896
Студент:(
2005-09-24 01:28
2005.10.16
Вычисление С в степени N с минимальным количеством умножений