Использование транзакций - их цель - сделать последовательность операторов SQL атомарной.
Например (НЕ очень оптимизировано - может быть улучшено с помощью временной таблицы):
START TRANSACTION;
INSERT Child_Archive
SELECT DISTINCT
Child.* FROM Child, Parent
WHERE Child.FK = Parent.PK
AND Parent.something=11;
DELETE Child WHERE FK IN (
SELECT DISTINCT PK FROM Parent WHERE Parent.something=11);
INSERT Parent_Archive
SELECT DISTINCT * FROM Parent WHERE Parent.something=11;
DELETE Parent WHERE Parent.something=11;
COMMIT;