Sobes.tech
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.