Sobes.tech
Junior — Middle

Como implementar a gestão de transações no sistema?

sobes.tech IA

Resposta da IA

Em Go, a gestão de transações é geralmente implementada usando os métodos Begin(), Commit() e Rollback() do pacote database/sql. Primeiro, uma transação é criada através de db.Begin(), depois as operações necessárias são realizadas, e no final, a transação é confirmada (Commit()) ou revertida (Rollback()) em caso de erro.

Exemplo:

tx, err := db.Begin()
if err != nil {
    // tratamento de erro
}

_, err = tx.Exec("INSERT INTO users(name) VALUES(?)", "Alice")
if err != nil {
    tx.Rollback()
    // tratamento de erro
}

err = tx.Commit()
if err != nil {
    // tratamento de erro
}

Essa abordagem garante a atomicidade das operações e permite controlar a integridade dos dados.