Junior — Middle
Hogyan valósítható meg a tranzakciók kezelése a rendszerben?
sobes.tech MI
Válasz az MI-től
Go-ban a tranzakciókezelést általában a database/sql csomag Begin(), Commit() és Rollback() metódusai segítségével valósítják meg. Először egy tranzakciót hozunk létre a db.Begin() segítségével, majd végrehajtjuk a szükséges műveleteket, és végül a tranzakciót vagy jóváhagyjuk (Commit()), vagy hibát esetén visszavonjuk (Rollback()).
Példa:
trx, err := db.Begin()
if err != nil {
// hiba kezelése
}
_, err = trx.Exec("INSERT INTO users(name) VALUES(?)", "Alice")
if err != nil {
trx.Rollback()
// hiba kezelése
}
err = trx.Commit()
if err != nil {
// hiba kezelése
}
Ez a megközelítés garantálja a műveletek atomitását és lehetővé teszi az adatok integritásának ellenőrzését.