it-praxisportal/courses/sql/14_transaktionen_acid_und_locking
Alex Mueller 2571cb8847 feat(ux): responsive kurs-sidebar und kapitel-drawer für alle 13 kurse & web-ide
- Dynamic Sidebar mit window.COURSES_MANIFEST für 13 Kurse (216 Kapitel)
- Kurswechsler Dropdown mit Direktnavigation
- Fortschrittsanzeige mit Solved-Checkmarks (✓) aus localStorage
- Responsive Off-Canvas Drawer mit Floating Action Button (☰ Kapitel) & Backdrop auf Mobile/Tablets
- Web-IDE Topbar Drawer-Button (☰ Kapitel) für unterbrechungsfreien Vollbild-Editor
- Saubere Bereinigung redundanter statischer Legacy-Sidebars
2026-09-12 13:49:46 +02:00
..
aufgabe.sql Vollständige Umsetzung von Phase A bis C: (1) SQL & Data Analytics Master (16 Module), (2) HTML5 & Modern CSS3 (16 Module) und (3) Go Cloud Microservices (16 Module). Plattform umfasst nun 131 Module über 7 Sprachen 2026-08-30 13:10:38 +02:00
index.html feat(ux): responsive kurs-sidebar und kapitel-drawer für alle 13 kurse & web-ide 2026-09-12 13:49:46 +02:00
musterloesung.sql Vollständige Umsetzung von Phase A bis C: (1) SQL & Data Analytics Master (16 Module), (2) HTML5 & Modern CSS3 (16 Module) und (3) Go Cloud Microservices (16 Module). Plattform umfasst nun 131 Module über 7 Sprachen 2026-08-30 13:10:38 +02:00
README.md Vollständige Umsetzung von Phase A bis C: (1) SQL & Data Analytics Master (16 Module), (2) HTML5 & Modern CSS3 (16 Module) und (3) Go Cloud Microservices (16 Module). Plattform umfasst nun 131 Module über 7 Sprachen 2026-08-30 13:10:38 +02:00
test_aufgabe.sql Vollständige Umsetzung von Phase A bis C: (1) SQL & Data Analytics Master (16 Module), (2) HTML5 & Modern CSS3 (16 Module) und (3) Go Cloud Microservices (16 Module). Plattform umfasst nun 131 Module über 7 Sprachen 2026-08-30 13:10:38 +02:00

SQL 14: ACID Transaktionen, COMMIT, ROLLBACK & Savepoints 🛡️🏦

Willkommen zu Modul 14 (Lehrpfad 4: Performance, Transaktionen & Analytics Master)! In Unternehmensdatenbanken darf niemals ein fehlerhafter Zwischenzustand persistiert werden. In diesem Modul lernst du Transaktionskontrolle (TCL - Transaction Control Language), die 4 Säulen des ACID-Prinzips und die sichere Handhabung von Savepoints.


🎯 Lernziele

  1. ACID-Prinzipien: Atomicity, Consistency, Isolation und Durability in relationalen Datenbanken.
  2. BEGIN TRANSACTION & COMMIT: Bündeln mehrerer DML-Statements zu einer unteilbaren Einheit.
  3. ROLLBACK: Automatisches oder manuelles Verwerfen aller Änderungen bei Fehlern.
  4. SAVEPOINT & ROLLBACK TO: Schrittweises Speichern und gezieltes Zurückrollen innerhalb aktiver Transaktionen.
  5. Datenintegrität & Bilanzprüfungen: Validieren von Gesamtsummen und Vermeiden von Phantom-/Inkonsistenz-Zuständen.

💡 Wie Savepoints funktionieren

BEGIN TRANSACTION;
-- 1. Gültiger Hauptschritt
INSERT INTO bestellungen (id, status) VALUES (1, 'in Bearbeitung');

-- 2. Zwischenspeicherpunkt anlegen
SAVEPOINT sp_rabatt;

-- 3. Versuch, einen Gutschein anzuwenden
UPDATE bestellungen SET rabatt = 50 WHERE id = 1;

-- Falls der Gutschein abgelaufen ist -> Zurück zum Savepoint:
ROLLBACK TO SAVEPOINT sp_rabatt;

-- 4. Transaktion abschließen
COMMIT;

🚀 Aufgabenstellung (aufgabe.sql)

  1. TODO 1: Erfolgreiche Überweisung mit COMMIT – Überweise 300 € von Konto 1 auf Konto 2 und logge den Transfer.
  2. TODO 2: Transaktionsabbruch mit ROLLBACK – Simuliere eine ungedeckte Abbuchung und mache alles rückgängig.
  3. TODO 3: Partieller Rollback mit SAVEPOINT – Führe eine Reservierung durch, rolle einen fehlerhaften Folgeschritt zurück und committe die Reservierung.
  4. TODO 4: Konsistenz-Audit – Prüfe, ob die Bilanzsumme aller Bankkonten nach den Transaktionen unverändert 4.000 € beträgt.

🧪 Tests ausführen

Validierung erfolgt über test_aufgabe.sql.