Sobes.tech
Junior — Middle

Kā uzsākt jaunu darījumu datu bāzes pārvaldības sistēmā?

sobes.tech AI

Atbilde no AI

Go valodā, strādājot ar datu bāzēm, parasti tiek izmantots pakotne database/sql. Lai uzsāktu jaunu transakciju, izsauc metodi Begin() no objekta *sql.DB. Šī metode atgriež objektu *sql.Tx, kas pārstāv transakciju. Turpmāk, ar metodēm Commit() vai Rollback(), var apstiprināt vai anulēt transakciju.

Piemērs:

import (
    "database/sql"
    _ "github.com/lib/pq" // PostgreSQL vadītājs
)

func piemērs(db *sql.DB) error {
    tx, err := db.Begin()
    if err != nil {
        return err
    }

    // Operāciju izpilde transakcijas ietvaros
    _, err = tx.Exec("INSERT INTO users(name) VALUES($1)", "Alice")
    if err != nil {
        tx.Rollback() // transakcijas atcelšana kļūdas gadījumā
        return err
    }

    return tx.Commit() // transakcijas apstiprināšana
}