![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Разъясните, пожалуйста использование dbiSaveChanges [D5, Paradox]
KonuhovSegey © (2002-12-14 11:46:00)Насколько я понял из конференции функция BDE – dbiSaveChanges(Handle) немедленно записывает изменения на диск.
Непонятно как она взаимодействует с транзакциями.
Если более коротко, то в каком порядке вызывать будет правильно
TDataBase.Commit и dbiSaveChanges(Handle).
Требуется, чтобы транзакция была подтверждена и изменения немедленно записаны.
И второй вопрос о транзакциях.
Есть две таблицы соединенные как Главный–Подчиненный
в отношении один ко многим.
При заполнении нескольких записей обоих таблиц (т.е. N-в главной и N*K– в подчиненной) происходит выключение света. При этом Последняя изменяемая запись в главной таблице исчезает (ну это понятно, Post еще не прошел), а подчиненные записи раскидываются по нескольким записям главной таблицы.
Каждое изменение записи главной таблицы и зависимых от нее подчененных заключены в вызовы StartTransaction и Commit.
Требуется сделать так, что бы все изменения между вызовами в случае отключения, зависания и т.д. терялись полностью. База данных на на Delphi 5 & Paradox.
Alexandr (2002-12-15 09:25:00) [1]параллельно.
Это никак не связанные вещи, насколько я понимаю...
KonuhovSegey (2002-12-15 08:59:00) [2]Это я и сам прочитал.
Меня интерисует как работает при активной транзакции.
А именно, записывает изменения подтвержденной уже транзакции
или во временный файл транзакции, который потом следует записать
в основной, подтвердив транзакцю.
Дмитрий К.К. (2002-12-14 16:52:00) [3]DbiSaveChanges forces all updated records associated with hCursor to disk.