Middle
Tranzaksiya nima?
sobes.tech AI
AIdan javob
Bir operatsiya ketma-ketligi bo'lib, u yagona bo'lak sifatida bajariladi. Ma'lumotlar bazalari kontekstida, operatsiya uning ichidagi barcha operatsiyalar muvaffaqiyatli yakunlanishini yoki xatolik yuzaga kelganda bekor qilinishini ta'minlaydi, shunda tizim nomutanosib holatda qolmaydi. Go tilida, operatsiyalar ko'pincha database/sql paket orqali ma'lumotlar bazalari bilan ishlatiladi.
Go tilida operatsiya misoli:
// db — *sql.DB obyekti
ctx := context.Background()
tx, err := db.BeginTx(ctx, nil)
if err != nil {
log.Fatal(err)
}
_, err = tx.ExecContext(ctx, "INSERT INTO users(name) VALUES(?)", "Alice")
if err != nil {
tx.Rollback()
log.Fatal(err)
}
err = tx.Commit()
if err != nil {
log.Fatal(err)
}
Bu yerda, qo'shish operatsiyalari tranzaksiya doirasida amalga oshiriladi, va xatolik yuzaga kelganda, u bekor qilinadi yoki tasdiqlanadi.