Sobes.tech
Junior — Middle

Kirjeldage oma kogemust transaktsioonimehhanismide kasutamisel projektides.

sobes.tech AI

Vastus AI-lt

PHP projektides kasutasin peamiselt tehinguid andmebaasidega töötades, et tagada andmete terviklikkus. Näiteks, kui teostasin mitu seotud toimingut (näiteks tellimuse lisamine ja laoseisude uuendamine), panin need tehingusse, et vigade korral saaksin kõik muudatused tagasi võtta.

Näide PDO kasutades:

try {
    $pdo->beginTransaction();

    $pdo->exec("INSERT INTO orders (user_id, total) VALUES (1, 100)");
    $pdo->exec("UPDATE products SET stock = stock - 1 WHERE id = 10");

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

See lähenemine aitab vältida osalisi andmevärskendusi ning säilitada andmebaasi järjepidevust.