Sobes.tech
Junior — Middle

Kā īstenot darījumu pārvaldību sistēmā?

sobes.tech AI

Atbilde no AI

Go valodā transakciju pārvaldība parasti tiek īstenota, izmantojot database/sql pakotnes metodes Begin(), Commit() un Rollback(). Vispirms tiek izveidota transakcija ar db.Begin(), tad tiek veiktas nepieciešamais darbs, un beigās transakcija vai apstiprinās (Commit()), vai atceļas (Rollback()) kļūdas gadījumā.

Piemērs:

tx, err := db.Begin()
if err != nil {
    // kļūdas apstrāde
}

_, err = tx.Exec("INSERT INTO users(name) VALUES(?)", "Alice")
if err != nil {
    tx.Rollback()
    // kļūdas apstrāde
}

err = tx.Commit()
if err != nil {
    // kļūdas apstrāde
}

Šī pieeja garantē operāciju atomiskumu un ļauj kontrolēt datu integritāti.