Junior — Middle
როგორ განვახორციელოთ ტრანზაქციების მართვა სისტემაში?
sobes.tech AI
პასუხი AI-სგან
Go-ში ტრანზაქციების მართვა ჩვეულებრივ ხორციელდება database/sql პაკეტიდან Begin(), Commit() და Rollback() მეთოდების გამოყენებით. ჯერ ქმნიან ტრანზაქციას db.Begin()-ის საშუალებით, შემდეგ ასრულებენ საჭირო ოპერაციებს და ბოლოს ტრანზაქცია ან დადასტურდება (Commit()), ან გაუქმდება (Rollback()) შეცდომის შემთხვევაში.
მაგალითი:
tx, err := db.Begin()
if err != nil {
// შეცდომის დამუშავება
}
_, err = tx.Exec("INSERT INTO users(name) VALUES(?)", "Alice")
if err != nil {
tx.Rollback()
// შეცდომის დამუშავება
}
err = tx.Commit()
if err != nil {
// შეცდომის დამუშავება
}
ეს მიდგომა გარანტიას იძლევა ოპერაციების ატომურობის და მონაცემთა მთლიანობის კონტროლისთვის.