Sobes.tech
Junior — Middle

Opisz swoje doświadczenie w korzystaniu z mechanizmów transakcyjnych w projektach.

sobes.tech AI

Odpowiedź od AI

W projektach PHP korzystałem głównie z transakcji podczas pracy z bazami danych, aby zapewnić integralność danych. Na przykład, podczas wykonywania kilku powiązanych operacji (np. dodanie zamówienia i aktualizacja stanów magazynowych), opakowywałem te działania w transakcję, aby w przypadku błędu cofnąć wszystkie zmiany.

Przykład z użyciem PDO:

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 "Błąd: " . $e->getMessage();
}

Takie podejście pomaga uniknąć częściowych aktualizacji danych i zachować spójność bazy.