Начало » Программирование » Delphi » FireDac и FDQuery - нужно каждый раз вызывать коммит?
FireDac и FDQuery - нужно каждый раз вызывать коммит? [сообщение #2564] |
Thu, 15 June 2023 17:55  |
GrigoryFomin
Сообщений: 91 Зарегистрирован: April 2023
|
Member |
|
|
Подскажите такой нюанс. Я стартанул пишущую транзакцию, везде автокоммит выключил. в ОДНОМ и том же FDQuery выполняю разный код по вставке данных. После всех манипуляций вызываю Commit в транзакции. Данные попадают только от последних инсертов. Нужно после каждого ExecSQL вызывать Коммит? А какже тогда организовать множественную вставку в пределах одной транзакции и если какая-то ошибка - отменить все изменения в рамках одной транзакции?
Например, пишем продажу, пишем сначала в журнал Orders, потом в журнал Opers, Потом обновляем остатки и наконец пишем в журнал кассы. И если мы явно управляем транзакциями, когда вызывать коммит? По идее тогда, когда ни одной ошибки не произошло, иначе делаем роллбэк. Но тога для каждой операции надо свой FDQuery создавать?
|
|
|
|
Переход к форуму:
Текущее время: Fri Feb 21 17:35:37 GMT+3 2025
Общее время, затраченное на создание страницы: 0.01321 секунд
|