Skip to content

Latest commit

 

History

History
64 lines (46 loc) · 2.23 KB

Uebungen.md

File metadata and controls

64 lines (46 loc) · 2.23 KB

Übungen zu Transaktionen

Theoriefragen

  • Erkläre Folgende Begriffe in eigenen Worten:

    • Dirty Read:
    • Non-Repeatable Read:
    • Phantom Read:
  • Wie unterscheiden sich die Isolationslevel

- Read Commited: <!-- alles was vor dem query geschehen ist, ist sichtbar -->
- Serialized: <!-- alles was vor der transaktion geschehen ist, ist sichtbar -->
  • Wann sind Transaktionen Sinnvoll?:
    • Logging von Nutzerzugriffen auf eine Webseite:


    • Buchhaltungsprogramme mit wenigen gleichzeitigen Usern:


    • Backend einer Börse mit sehr vielen gleichzeitigen Usern:


    • Terminänderung in Webuntis:


Vorbereitungen

  • Erstelle 2 verschiedene User und öffne mit beiden Sessions zur Datenbank





  • Erstelle eine Tabelle dessen Daten dann durch Transaktionen verändert werden



  • Gewähre beiden Usern Zugriff auf die Tabelle



Daten doppelt anlegen

  1. Füge Daten in die Tabelle mit dem 1. User ein ohne commit
  2. Füge die selben Daten mit dem 2. User ebenfalls ein, setzte sofort ein commit ab
    • Wann wird die Transaktion ausgeführt?

  3. Setze ein Commit bei der Transaktion vom 1. User ab
    • was geschieht in der 2. Transaktion?

Tabellenstruktur ändern

  1. Lösche alle Daten mit dem 1. User ohne commit
  2. Füge zu der Tabelle eine neue Spalte hinzu
    • Was passiert mit der Transaktion vom 1. User

Neue Daten einfügen

  1. Lege eine Hälfte der Daten beim 1. User die andere Hälfte beim 2. User an ohne commit
    • was passiert bei der Transaktion im 2. User?