Sobes.tech
Junior — Middle

Koji je maksimalni broj operacija dozvoljen u okviru jedne transakcije?

sobes.tech АИ

Одговор од АИ

U Go (Golang) maksimalan broj operacija u jednoj transakciji nije ograničen samim jezikom ili standardnom bibliotekom. Ograničenja zavise od baze podataka i drajvera koji se koriste. Na primer, u SQL transakcijama, možete izvršiti mnogo operacija dokle god resursi nisu iscrpljeni ili dok limit baze podataka nije prekoračen.

Važno je zapamtiti da predugačke transakcije mogu dovesti do blokada i smanjenja performansi. Stoga se preporučuje da transakcije budu kratke i logički povezane.

Primer korišćenja transakcije u Go sa bazom podataka:

trx, err := db.Begin()
if err != nil {
    log.Fatal(err)
}

_, err = trx.Exec("INSERT INTO users(name) VALUES(?)", "Alice")
if err != nil {
    trx.Rollback()
    log.Fatal(err)
}

_, err = trx.Exec("UPDATE accounts SET balance = balance - ? WHERE user_id = ?", 100, 1)
if err != nil {
    trx.Rollback()
    log.Fatal(err)
}

err = trx.Commit()
if err != nil {
    log.Fatal(err)
}

Ovde možete dodati bilo koji broj operacija, sve dok su logički povezane i ne prelaze ograničenja baze podataka.