Sobes.tech
Middle+

Mi az a tranzakció és mik az ACID elvek?

sobes.tech MI

Válasz az MI-től

Egy tranzakció egy adatbázissal végrehajtott műveletek sorozata, amelyet egységes egészként hajtanak végre. Ha valamelyik művelet nem sikerül, minden változtatást visszavonnak az adatok integritásának megőrzése érdekében.

Az ACID elvek biztosítják a tranzakciók megbízhatóságát:

  • Atomicitás: A tranzakció vagy teljes egészében végrehajtódik, vagy egyáltalán nem.
  • Konzisztencia: A tranzakció végrehajtása után az adatbázis helyes állapotban marad.
  • Elszigeteltség: A párhuzamos tranzakciók nem befolyásolják egymást.
  • Tartósság: A tranzakció megerősítése után a változások még hibák esetén is megmaradnak.

Go-ban, az database/sql használatával az adatbázissal való munka során a tranzakció így jön létre:

trx, err := db.Begin()
if err != nil {
    // hiba kezelése
}
_, err = trx.Exec("INSERT INTO users(name) VALUES(?)", "Alice")
if err != nil {
    trx.Rollback()
    // hiba kezelése
}
err = trx.Commit()
if err != nil {
    // hiba kezelése
}