sql / intermediate
Snippet
Steuerung von Transaktionsparallelität mit SQL-Isolationsstufen
Das Festlegen von Isolationsstufen steuert, wie Änderungen durch parallele Transaktionen gegenseitig sichtbar sind. REPEATABLE READ verhindert nicht-wiederholbare Lesevorgänge bei atomaren Statusaktualisierungen.
snippet.sql
sql
1
2
3
4
5
6
7
8
9
10
11
12
SET TRANSACTION ISOLATION LEVEL REPEATABLE READ;START TRANSACTION;UPDATE accountsSET balance = balance - 250.00WHERE account_id = 101;UPDATE accountsSET balance = balance + 250.00WHERE account_id = 202;COMMIT;
Erklärung
1
SET TRANSACTION ISOLATION LEVEL REPEATABLE READ;
Konfiguriert die Isolationsstufe zur Gewährleistung konsistenter Lesevorgänge.
2
START TRANSACTION;
Startet eine explizite Transaktionsgrenze für eine Reihe von Anweisungen.
3
UPDATE accounts SET balance = balance - 250.00 WHERE account_id = 101;
Zieht den Betrag als atomaren Schritt vom Absenderkonto ab.
4
UPDATE accounts SET balance = balance + 250.00 WHERE account_id = 202;
Schreibt den Betrag dem Empfängerkonto im selben Transaktionsbereich gut.
5
COMMIT;
Speichert alle während der Transaktion vorgenommenen Änderungen dauerhaft.