Junior — Middle
Hoe start je een nieuwe transactie in het databasebeheersysteem?
sobes.tech AI
Antwoord van AI
In Go wordt voor het werken met transacties in databases meestal het pakket database/sql gebruikt. Om een nieuwe transactie te starten, wordt de methode Begin() aangeroepen op het object *sql.DB. Deze methode geeft een object *sql.Tx terug, dat de transactie vertegenwoordigt. Daarna kunnen met de methoden Commit() of Rollback() de transactie worden bevestigd of geannuleerd.
Voorbeeld:
import (
"database/sql"
_ "github.com/lib/pq" // driver voor PostgreSQL
)
func voorbeeld(db *sql.DB) error {
tx, err := db.Begin()
if err != nil {
return err
}
// Uitvoeren van operaties binnen de transactie
_, err = tx.Exec("INSERT INTO users(name) VALUES($1)", "Alice")
if err != nil {
tx.Rollback() // transactie terugdraaien bij fout
return err
}
return tx.Commit() // transactie bevestigen
}