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

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

Корретная работа с транзакциями, ХЕЛП!!! [D6, IB6.x]


Sevish ©   (2003-08-14 13:13:00) 

Значит так, я видимо запутался в понятии транзакции или как-то ещё...
Пример.

есть: Транзакция1, Транзакция2, Транзакция3
есть: Запрос1, Запрос2, Запрос3 (IBQuery)
есть: Таблица1 (TDBGrid)

Связи: Запрос1->Транзакция1, Таблица1->Запрос1
Связи: Запрос2->Транзакция2
Связи: Запрос3->Транзакция3

Запрос2, Запрос3 - рабочий запрос.

Все действия выполняются над одной базы данных.

1.
С помощью Запрос2 делаем выборку из таблицыБД1, в цикле заносим ее в таблицуБД2 с помощью Запрос3.

перд циклом делаю Транзакция3.Старт, после цикла Транзакция3.Комит.

2.
С помощью Запрос2 делаем выборку из таблицыБД1, в цикле заносим ее в таблицуБД3 с помощью Запрос3.

перд циклом делаю Транзакция3.Старт, после цикла Транзакция3.Комит.

3.
С помощью Запрос2 делаю объединяющую выборку из таблицБД2-3, в цикле заносим ее в таблицуБД4 с помощью Запрос3.

4.
Дактивирую Запрос1. Активирую Запрос1 - вижу в гриде представление таблицыБД4.

НО НЕ ВСЕГДА И ВООБЩЕ:

Смотрел напрямую значения в таблицахБД1-4 вообще не то, что мне показывает дельфовская форма.

ВНИМАНИЕ: никаких других странзакций не стартую и не делаю комит или ролбэк.

МОЖЕТ В ЭТОМ ВСЯ ПРИЧИНА?

Запрос1 просто не видит, что данные в таблицаБД4 изменились :(

Что делать? Когда нужно стартовать транзакцию? и т.п.
Если я делаю Транзакция.комит, то все мои запросы, связанные с этой транзакцией обнуляются :(

в общем я запутался :(

ПОМОГИТЕ!


Zacho   (2003-08-14 13:20:00) [1]

Почитай http://www.ibase.ru/devinfo/ibtrans.htmи http://www.ibase.ru/devinfo/ibxtrans.htm


Наверх

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