Junior — Middle
Comment initier une nouvelle transaction dans le système de gestion de base de données?
sobes.tech IA
Réponse de l'IA
En Go, pour travailler avec des transactions dans une base de données, le package database/sql est généralement utilisé. Pour initier une nouvelle transaction, on appelle la méthode Begin() sur l'objet *sql.DB. Cette méthode retourne un objet *sql.Tx, qui représente la transaction. Ensuite, avec les méthodes Commit() ou Rollback(), on peut confirmer ou annuler la transaction.
Exemple:
import (
"database/sql"
_ "github.com/lib/pq" // pilote pour PostgreSQL
)
func exemple(db *sql.DB) error {
tx, err := db.Begin()
if err != nil {
return err
}
// Effectuer des opérations dans le cadre de la transaction
_, err = tx.Exec("INSERT INTO users(name) VALUES($1)", "Alice")
if err != nil {
tx.Rollback() // annuler la transaction en cas d'erreur
return err
}
return tx.Commit() // valider la transaction
}