Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak działa zawieszenie transakcji w MySQL?

Nie oznacza to nic specjalnego, zawieszona transakcja to tylko transakcja, która czasowo nie jest używana do wstawiania, aktualizacji, zatwierdzania lub wycofywania, ponieważ nowa transakcja powinna zostać utworzona ze względu na określone właściwości propagacji, a tylko jedna transakcja może być aktywna w tym samym czasie.

Zasadniczo istnieją dwa modele transakcji:zagnieżdżony i płaski Model. W modelu zagnieżdżonym, jeśli rozpoczynasz transakcję, a potrzebujesz drugiej, ta pierwsza pozostaje aktywna, to znaczy, że druga zostanie zagnieżdżona wewnątrz swojego rodzica i tak dalej. Z drugiej strony w modelu płaskim pierwsza transakcja zostanie zawieszona, to znaczy nie wykorzystamy jej do czasu zakończenia nowej.

Płaski model AFAIK jest używany prawie wyłącznie (włącznie ze specyfikacją Spring i EJB), ponieważ jest znacznie łatwiejszy do wdrożenia :w danym momencie jest tylko jedna aktywna transakcja, więc łatwo jest zdecydować, co zrobić w przypadku wycofania, powiedzmy, z powodu wyjątku. Co ważniejsze, podstawowa baza danych musi go obsługiwać, jeśli potrzebujesz modelu zagnieżdżonego, więc model płaski jest tylko wspólnym mianownikiem w tym przypadku.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL:Policz rekordy z jednej tabeli, a następnie zaktualizuj inną

  2. MySql:MyISAM kontra Inno DB!

  3. Błąd Django mysql

  4. Nieprawidłowa kolejność przewodnika

  5. Ostatni indeks ciągu znaków MySQL