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

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

Вставленные в таблицу строки сразу не появляются [FB] [D7, FireBird 1.5]


_no_name_ ©   (2007-01-17 22:05:00) 

Вставляю записи в таблицу FireBirda, использую такой SQL код:

INSERT INTO T_FOR_CHECK (ID_BASE, ID_USER_ADD, ID_CHECK_SUBJ, REM_FOR_CHECK)
VALUES  (:P_ID_BASE, :P_ID_USER_ADD, :P_ID_CHECK_SUBJ, :P_REM_FOR_CHECK)


с клиента это все запускается так:

DM->IBQ_AddToCheck->ParamByName("P_ID_BASE")->AsString = DM->IBQ_List_All->FieldByName("ID_BASE")->AsString;
DM->IBQ_AddToCheck->ParamByName("P_ID_USER_ADD")->AsString = DM->GetUserID();
DM->IBQ_AddToCheck->ParamByName("P_ID_CHECK_SUBJ")->AsString = DM->IBQ_RChetSubj->FieldByName("ID_CHECK_SUBJ")->AsString;
DM->IBQ_AddToCheck->ParamByName("P_REM_FOR_CHECK")->AsString = fmAddCheck->Memo1->Text;
DM->IBQ_AddToCheck->Prepare();
DM->IBQ_AddToCheck->ExecSQL();
DM->IBTransaction1->CommitRetaining();


после вставки смотрю таблицу в котору были вставлены данные, а вставки не было, закрываю приложение, открываю его снова, опять смотрю в таблицу - данные есть, почему так?
я не правильно использую транзакции или в чем проблема?


Sergey13   (2007-01-18 13:57:00) [1]

> [3] _no_name_   (18.01.07 13:37)

Судя по коду кверики лежат на модуле данных. Ты мог сначала открыть читающий потом выполнить вставку. Если у обоих квериков одна транзакция, то какая она вроде не должно влиять на видимость.


Johnmen   (2007-01-18 13:42:00) [2]


> а где это выставлять?


Даблклик на IBTransaction.


_no_name_   (2007-01-18 13:37:00) [3]


> Проблема в параметрах транзакции.
> Надо
> read_committed
> rec_version
> nowait


а где это выставлять?


> Наверное посредством ранее открытого датасета и грида?


нет, у меня в программе 2 формы, на обоих гриды есть, на одной форме список клиентов, пользователь выбирает нужных, нажимает на кнопочку и данные должны попасть в табличку, вторая форма как раз отображате эти данные, оба компонента Query открываются при создании формы, форма создается при выборе пункта меню, а при закрытии уничтожается.
вроде бы так.


Sergey13   (2007-01-18 08:24:00) [4]

> после вставки смотрю таблицу в котору были вставлены данные,

Наверное посредством ранее открытогодатасета и грида?


Johnmen   (2007-01-17 23:00:00) [5]

Проблема в параметрах транзакции.
Надо
read_committed
rec_version
nowait


Наверх

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