У меня есть таблица Data и таблица Archive .
Веб-приложение помещает данные в таблицу Data , а задание cron извлекает данные каждый час и архивирует их в таблицу Archive (при этом сохраняется Data столик маленький и быстрый для работы).
На мой взгляд, нужно выполнить два псевдо-SQL-запроса:
INSERT Archive SELECT * FROM Data;
&
DELETE FROM Data;
Однако я хочу удалить только те данные, которые были успешно скопированы, если копирование не удалось, я хочу, чтобы оно оставалось в согласованном состоянии, чтобы данные не были перемещены наполовину или удалены.
Какой правильный способ сделать это?