Personalmente creo que la opción de TClientDataset si vas a hacer muchos cambios en la más acertada.
No es difícil. Básicamente añades un par de componentes a lo que ya tienes.
Aquí, por ejemplo, tienes una muy buena explicacion y puedes descargar el ejemplo, aunque si buscas puedes encontrar más.
Al abrir la tabla o consulta, el ClientDataset se encarga de cargar los datos en local. Tú trabajas como si estuvieras directamente en la Base de Datos (Edit, Append, Post,...) y cuando hayas realizado todas las operaciones ejecutas el método del TClientDataset
ApplyUpdates.
Este método vuelca todos los cambios que hayas realizado en local sobre el TClientDataset hacia la Base de datos.
Ya se que la explicación es muy resumida, pero espero que te de una idea.
Aquí tienes otro en castellano.
Un saludo.