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.