Sobes.tech
Junior — Middle

Kaip valdote sandorius savo projektuose?

sobes.tech AI

Atsakymas iš AI

PHP dažniausiai transakcijų valdymas įgyvendinamas naudojant PDO arba mysqli metodus. Pagrindinė idėja yra apimti kelias susijusias duomenų bazės operacijas į vieną transakciją, kad būtų užtikrintas atomizmas.

Pavyzdys su PDO:

try {
    $pdo->beginTransaction();

    // Vykdyti kelis užklausimus
    $pdo->exec("INSERT INTO users (name) VALUES ('Иван')");
    $pdo->exec("UPDATE accounts SET balance = balance - 100 WHERE user_id = 1");

    $pdo->commit();
} catch (Exception $e) {
    $pdo->rollBack();
    echo "Transakcijos klaida: " . $e->getMessage();
}

Šis požiūris užtikrina, kad visi veiksmai bus sėkmingai įvykdyti arba, jei įvyksta klaida, pakeitimai nebus išsaugoti.