Transakcje: BEGIN, COMMIT i ROLLBACK

Transakcja grupuje zmiany. COMMIT je zachowuje; ROLLBACK je cofa.

Składnia

BEGIN; … COMMIT;
BEGIN; … ROLLBACK;
  • Bez BEGIN każda instrukcja jest zatwierdzana osobno.

Przykład

BEGIN; DELETE FROM order_items WHERE order_id = 12; ROLLBACK;

Usunięcie zostaje cofnięte, więc tabela pozostaje bez zmian.

Użyte tabele: order_items. Wypróbuj to w lekcji poniżej.

Typowe błędy

  • Transakcja pozostawiona otwartą bez COMMIT ani ROLLBACK trzyma blokady. Zawsze ją zakończ.

Ćwicz to