IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Отмена удаления строки: вопрос
сообщение
Сообщение #1


Бывалый
***

Группа: Пользователи
Сообщений: 205
Пол: Мужской
Реальное имя: Евгений

Репутация: -  0  +


Можно ли вернуть в базу данных удаленную строку из таблицы?
Ctrl+z в данном случае не помогает, cancelupdates тоже.
Например пользователь случайно выделил не ту строку и удалил ее. Как можно отменить это действие?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Устанавливаешь в DataSet (что там у тебя, таблица? Значит, ADOTable) свойство LockType в ltBatchOptimistic (что означает пакетные изменения), и добавляешь пару кнопок: "Применить" и "Отменить". Вот с такими обработчиками:
// Это - "Применить"
procedure TForm1.btnApplyClick(Sender: TObject);
begin
ADOTable1.UpdateBatch();
end;

// Это - "Отменить"
procedure TForm1.btnCancelClick(Sender: TObject);
begin
ADOTable1.CancelBatch();
end;

Если теперь удалишь строку из Dataset-а по ошибке, то можно восстановить изменения, нажав на "Отменить". Визуально после удаления строка из Грида исчезнет, фактически из базы - нет, пока не будет применен метод UpdateBatch... Ну, а если уж нажал на "Применить" (второй раз ошибочно? Не может быть, это уже осознанно smile.gif ) - то потом откат сделать нельзя...
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 23.11.2025 6:20
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name