Sobes.tech
Junior — Middle

Jak implementovat správu transakcí v systému?

sobes.tech AI

Odpověď od AI

V Go je řízení transakcí obvykle implementováno pomocí metod Begin(), Commit() a Rollback() z balíčku database/sql. Nejprve se vytvoří transakce pomocí db.Begin(), poté se provedou potřebné operace a na závěr se transakce buď potvrdí (Commit()), nebo vrátí zpět (Rollback()) v případě chyby.

Příklad:

tx, err := db.Begin()
if err != nil {
    // zpracování chyby
}

_, err = tx.Exec("INSERT INTO users(name) VALUES(?)", "Alice")
if err != nil {
    tx.Rollback()
    // zpracování chyby
}

err = tx.Commit()
if err != nil {
    // zpracování chyby
}

Tento přístup zaručuje atomárnost operací a umožňuje kontrolu integrity dat.