Junior — Middle
Comment peut-on annuler les modifications dans le cadre d'une seule transaction?
sobes.tech IA
Réponse de l'IA
En Go, le package database/sql est généralement utilisé pour travailler avec des transactions. Pour annuler les modifications dans le cadre d'une transaction, il faut appeler la méthode Rollback() de l'objet transaction. Cela est généralement fait en cas d'erreur, pour annuler toutes les modifications effectuées dans la transaction.
Exemple :
tx, err := db.Begin()
if err != nil {
// gestion de l'erreur
}
// Exécution d'opérations dans la transaction
_, err = tx.Exec("INSERT INTO users(name) VALUES(?)", "John")
if err != nil {
tx.Rollback() // annuler la transaction en cas d'erreur
return err
}
// Si tout réussit, valider la transaction
err = tx.Commit()
if err != nil {
return err
}
Ainsi, l'appel à tx.Rollback() annule toutes les modifications effectuées dans le cadre de la transaction en cours.