Middle
Транзакция деген эмне?
sobes.tech AI
AIден жооп
Транзакция — бул операциялардын тизмеги, ал бирдик катары ишке ашырылат. Маалыматтар базасы контекстинде, транзакция анын ичинде болгон бардык операциялар ийгиликтүү аяктап, же ката болсо, кайра калыбына келтирилет, системаны туура эмес абалда калтырбоо үчүн кепилдик берет. Go тилинде транзакциялар көбүнчө database/sql пакети аркылуу маалыматтар базалар менен колдонулат.
Go тилинде транзакцияны колдонуу мисалы:
// db — *sql.DB объекти
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)
}
Бул жерде, кошуу операциялары транзакциянын чегинде жүргүзүлөт, ал же бекитилет, же ката болсо, кайра кайтарылат.