Junior — Middle
Чӣ гуна метавон тағиротҳоро дар доираи як транзаксия баргардонем?
sobes.tech AI
Ҷавоб аз AI
В Go обикновено се използва пакетът database/sql за работа с транзакции. За да отмените промените в рамките на една транзакция, трябва да извикате метода Rollback() на обекта транзакция. Това обикновено се прави при грешка, за да се отменят всички промени, направени в рамките на транзакцията.
Пример:
trx, err := db.Begin()
if err != nil {
// обработка на грешка
}
// Изпълнение на операции в транзакцията
_, err = trx.Exec("INSERT INTO users(name) VALUES(?)", "John")
if err != nil {
trx.Rollback() // отменяне на транзакцията при грешка
return err
}
// Ако всичко е успешно, потвърдете транзакцията
err = trx.Commit()
if err != nil {
return err
}
По този начин, извикването на trx.Rollback() отменя всички промени, направени в рамките на текущата транзакция.