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

Вниз

Проблема с Commit в IB   Найти похожие ветки 

 
Orpheus ©   (2003-06-19 08:12) [0]

Здравствуйте, Мастера!
Делаю TIBTransaction.StartTransaction
Затем TIBSQL.ExecQuery (несколько INSERT-ов)
Затем TIBTransaction.Commit
(**)
Затем TIBQuery.ExecQuery (SELECT те самые INSERT-ed записи)
Записи не отображаются...
Делаю вместо (**) TIBDatabase.Disconnect; TIBDatabase.Connect;
тогда все работает.
Понимаю, что дело в кэше. Но как их отключить (а лучше не отключить, а сбросить в базу!!!) не знаю... Помогите, пожалуйста.


 
Наталия ©   (2003-06-19 08:16) [1]

При "SELECT те самые INSERT-ed записи"
нужно делать TIBQuery.Open, а не TIBQuery.ExecQuery


 
Zacho ©   (2003-06-19 08:17) [2]


> Orpheus © (19.06.03 08:12)

Дело не в каком-то там кэше, а в уровне изоляции транзакций. Поставь ReadCommitted. И почитай статьи на http://www.ibase.ru/develop.htm


 
Orpheus ©   (2003-06-19 08:22) [3]

Там так и есть на самом деле (не пугайтесь - это реализация Automation server - логика работы программы прописана на VBScript):


procedure THTable.ExecSQL(const aSQL: WideString); safecall;
begin
Set_Active(false); // т.е. IBQuery.Active:= false;
Set_SQL(aSQL); // т.е. IBQuery.SQL.Text:= aSQL;
Set_Active(true); // т.е. IBQuery.Active:= true;
end;


 
Alexandr ©   (2003-06-19 08:23) [4]

тебе эе сказали выставь ReadCommited вместо repaetableRead
а ты хвастаешься знанием VbScript


 
Orpheus ©   (2003-06-19 08:56) [5]

Спасибо, помогло!


 
Zacho ©   (2003-06-19 09:03) [6]

И обязательно почитай статьи на www.ibase.ru, особенно http://www.ibase.ru/devinfo/ibtrans.htm



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

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

Наверх




Память: 0.47 MB
Время: 0.022 c
3-31136
ZDN
2003-06-18 09:23
2003.07.10
MSSQL, Oracle & DB2


4-31578
Xeon
2003-05-09 07:45
2003.07.10
Как создать ярлык?


1-31255
Anonimus
2003-06-28 16:47
2003.07.10
SizeOf PChar


1-31215
Mr.Shadow
2003-06-28 22:46
2003.07.10
Огпаничить Доступ


1-31205
A_ndrew
2003-06-28 19:15
2003.07.10
помогите, очень срочно - RichEdit!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!