Podría hacer un antes de activar la actualización que enviará una copia completa del registro a una tabla de historial que también contiene datos de estado adicionales que desea almacenar (fecha de actualización, usuario, etc.)
De esta manera tendrás un historial de revisión completo de lo que pasó con qué registros y debería pasar de forma transparente. solo piense en recordar que debe eliminar cualquier restricción única de la tabla de historial.
Espero que esto ayude.