Bonjour à tous.
Dans ma quête pour comprendre le SQL et l'utiliser correctement je viens de tomber sur un os.
Mettons que je doive écrire un long script qui fait des modifications dans mes tables (pas un simple SELECT donc). Le problème c'est qu'on est jamais sûr que notre script est exempt d'erreurs (erreur de frappe, mauvaise orthographe d'un champ, etc.). Or si une exception est levée en plein milieu du script celui-ci aura déjà été partiellement exécuté.
On va alors se retrouver avec une base complètement inconsistante et il faudra déterminer quelle requête est fautive pour réécrire un nouveau script ad hoc pour exécuter les requêtes qui ne l'ont pas été. Lequel nouveau script contiendra sans doute des erreurs de frappe, ce qui oblige à recommencer cette opération fastidieuse à chaque problème.
Existe-t-il donc un moyen de retrouver l'état initial de la base au cas où une exception survient au cours du script afin de pouvoir corriger simplement le script et l'exécuter à nouveau, sans avoir à en écrire un autre ?
Partager