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

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

Транзакции [D5, Paradox]


Страницы:   1 2

ka ©   (2004-05-19 17:10:00) 

Приветствую.
Нужно удалить строку из одной таблицы и добавить строку в другую таблицу в рамках одной транзакции. Я делаю это так:

DataBase1.StartTransaktion
try
…
…
…
DataBase1.Commit;
except
DataBase1.RollBack;
end;

Все бы хорошо, но после того как я проверил как же работают транзакции, я увидел, что в моем варианте они вообще не работают.
Я благополучно удалил строку из одной таблицы (проверил физически из файла таблицы строка удалилась, я думал что этого быть не должно) вызвал ошибку произошел откат - DataBase1.Rollback, а в таблице удаленная строка не появилась. В чем дело? Я подумал может дело в кэшировании страниц, добавил  DataBase1.ApplyUpdates(…),DataBase1.CanselUpdates(…) убрал DataBase1.StartTransaktion, DataBase1.Commit, DataBase1.RollBack. Да еще включил Query.CashedUpdates.
Вот.
В чем я протуканил?


Reindeer Moss Eater   (2004-05-19 17:28:00) [21]

Прочитай раздел "Transactions on Paradox, dBASE, FoxPro, and Access" из Borland Database Engine Online Reference


Mike Kouzmine   (2004-05-19 17:28:00) [22]

Наппиши как ты это сделал подробно.


Страницы:   1 2

Наверх

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