Back to course

Database Transactions in Go

Go (Golang) for Cloud-Native Microservices

Ensuring Atomicity

Transactions are vital for microservices handling financial or sensitive data.

go tx, err := db.Begin() if err != nil { return err }

_, err = tx.Exec("UPDATE accounts SET balance = balance - 100 WHERE id = 1") if err != nil { tx.Rollback() // Undo everything return err }

tx.Commit() // Save everything