Dalej•LEKCJA 26 / 26

ROLLBACK i atomowość

Kurs SQL · Wyjaśnienie, przykłady, oczekiwany wynik i ćwiczenie.

Transakcja obejmuje kilka operacji, które powinny wykonać się jako całość.

Cel lekcji

Poznać zagadnienie „ROLLBACK i atomowość”, zrozumieć przykład i umieć zastosować podobny zapis we własnym programie.

Wyjaśnienie krok po kroku

ROLLBACK odwraca niezapisane zmiany, gdy operacja nie może zostać dokończona.

Najpierw przeanalizuj kod bez uruchamiania. Zwróć uwagę, jakie dane wykorzystuje program, co z nimi robi i skąd bierze się wynik pokazany pod przykładem.

Praktyczny przykład

Gdzie zobaczysz efekt: Wynik zapytania w bazie danych

Uwaga: Ten przykład zakłada istnienie tabel o pokazanych nazwach, chyba że właśnie tworzy tabelę. Podany wynik zależy od danych, które umieścisz w bazie. Składnia demonstracyjna jest zbliżona do SQLite.

BEGIN;
UPDATE users SET city = 'Poznań' WHERE id = 1;
ROLLBACK;

Przeczytaj kod linijka po linijce

  1. BEGIN;Wykonujemy operację na strukturze bazy lub transakcji.
  2. UPDATE users SET city = 'Poznań' WHERE id = 1;Modyfikujemy albo usuwamy wybrane dane.
  3. ROLLBACK;Wykonujemy operację na strukturze bazy lub transakcji.
Oczekiwany wynik / efektpo uruchomieniu przykładu
Zmiana wykonana w transakcji zostaje wycofana.

Jak utrwalić tę umiejętność?

Przepisz kod samodzielnie. Następnie zmień jedną wartość lub jedną instrukcję i spróbuj przewidzieć efekt. Dopiero potem uruchom zmienioną wersję. Jeśli wynik jest inny niż oczekiwany, porównaj kolejne linie.

Spróbuj samodzielnie

Zmień ROLLBACK na COMMIT i porównaj wynik.

To już koniec tej lekcji.

Jeśli rozumiesz przykład, oznacz lekcję jako ukończoną i przejdź dalej.