Interaktive Schulungsoberfläche für relationale Normalisierung in SQL und flexible Dokumentmodelle in MongoDB.
Die Oberfläche zeigt den Weg von Excel-Rohdaten über Qualitätsprobleme und Bereinigung bis zur relational normalisierten Datenbank.
| Aspekt | Vorher (Excel) | Nachher (relationale DB) | Vorteil |
|---|---|---|---|
| Tabellenanzahl | 3 Tabellen (alles in Freitext) | 8 Tabellen (typisiert, verknüpft) | Klare Struktur, keine Redundanz |
| Kundendaten in Bestellungen | Name, Ort, PLZ in jeder Bestellung wiederholt | Nur kunden_id als Fremdschlüssel | Änderung an einer Stelle reicht (keine Update-Anomalie) |
| Produkte pro Bestellung | Alle Produkte in EINER Zelle (Komma-getrennt) | Eigene Tabelle bestellpositionen: 1 Zeile pro Produkt | 1. Normalform: Abfragen wie "Umsatz pro Produkt" sind jetzt einfach |
| Kategorien | "Elektronik", "ELEKTRONIK", "elekt." — alles verschieden | Eigene Tabelle kategorien mit ID | Eindeutige Zuordnung, keine Tippfehler möglich |
| Preise | "12,99" und "12.99" gemischt (Text) | DECIMAL(10,2) — immer korrekt | Rechnen, Summieren, Vergleichen funktioniert zuverlässig |
| Datumsformate | "23.04.1990", "1990-04-23", "12.3.78" gemischt | DATE-Typ — ein einheitliches Format | Sortieren, Filtern nach Zeiträumen, Altersberechnung möglich |
| Datenintegrität | Bestellungen können auf nicht-existente Kunden verweisen | FOREIGN KEY verhindert ungültige Referenzen | Datenbank garantiert Konsistenz |
| Lieferanten | Lieferantenname als Freitext in jedem Produkt | Eigene Tabelle lieferanten mit ID | Lieferant umbenennen? Eine Stelle ändern statt hunderte |
| Kategorie | Bestellungen | Stück verkauft | Umsatz |
|---|---|---|---|
| Werkzeug | 48 | 307 | 146.790,44 € |
| Möbel | 49 | 269 | 131.364,51 € |
| Auto & Motorrad | 32 | 222 | 129.292,85 € |
| Lebensmittel | 48 | 289 | 122.514,97 € |
| Kleidung | 34 | 212 | 120.397,58 € |
| Musik | 32 | 213 | 118.456,91 € |
| Bücher | 32 | 176 | 111.818,15 € |
| Garten | 32 | 181 | 101.713,57 € |
| Sport | 43 | 226 | 94.514,92 € |
| Elektronik | 24 | 147 | 89.757,79 € |
| Kosmetik | 45 | 256 | 89.065,57 € |
| Haushalt | 30 | 168 | 80.226,75 € |
| Bürobedarf | 24 | 154 | 61.737,48 € |
| Spielzeug | 20 | 125 | 49.995,47 € |
| Tierbedarf | 27 | 126 | 44.131,97 € |
| Kunde | Ort | Bestellungen | Gesamtumsatz |
|---|---|---|---|
| Doris Winter | Köln | 3 | 43.130,73 € |
| Norbert Meyer | Würzburg | 3 | 42.487,96 € |
| Ottilie Schmid | Ulm | 3 | 39.684,67 € |
| Jan Kuhn | Dresden | 3 | 37.342,72 € |
| Paul Lorenz | Nürnberg | 3 | 37.049,10 € |
| Erik Keller | Bochum | 2 | 35.343,32 € |
| Xaver Winter | Freiburg | 3 | 30.992,99 € |
| Manfred Schröder | Regensburg | 3 | 30.383,48 € |
| Hans Wolf | Potsdam | 3 | 30.034,93 € |
| Wolfgang Schmid | Potsdam | 3 | 28.227,30 € |
| Monat | Anzahl_Bestellungen |
|---|---|
| 2024-01 | 5 |
| 2024-02 | 8 |
| 2024-03 | 9 |
| 2024-04 | 4 |
| 2024-05 | 4 |
| 2024-06 | 2 |
| 2024-07 | 7 |
| 2024-08 | 7 |
| 2024-09 | 7 |
| 2024-10 | 2 |
| 2024-11 | 9 |
| 2024-12 | 3 |
| 2025-01 | 2 |
| 2025-02 | 7 |
| 2025-03 | 8 |
| 2025-04 | 5 |
| 2025-05 | 10 |
| 2025-06 | 4 |
| 2025-07 | 4 |
| 2025-08 | 3 |
| 2025-09 | 6 |
| 2025-10 | 4 |
| 2025-11 | 7 |
| 2025-12 | 6 |
| 2026-01 | 6 |
| 2026-02 | 10 |
| 2026-03 | 7 |
| 2026-04 | 6 |
| 2026-05 | 5 |
| 2026-06 | 5 |
| 2026-07 | 3 |
| 2026-08 | 4 |
| 2026-09 | 7 |
| 2026-10 | 6 |
| 2026-11 | 2 |
| 2026-12 | 6 |
| Lieferant | Produkt | Bestand | Preis |
|---|---|---|---|
| ZentralEinkauf AG | Pro Stuhl | 0 | 360,64 € |
| TopWaren AG | Basic Essig | 0 | 369,84 € |
| MegaSupply GmbH | Deluxe Olivenöl | 2 | 130,93 € |
| (kein Lieferant) | Kompakt Geschirrtuch | 2 | 388,19 € |
| NordHandel OHG | Eco Kratzbrett | 4 | 738,79 € |
| AllGoods Ltd. | Basic Rock | 4 | 463,22 € |
| AllGoods Ltd. | Kompakt Schraubendreher-Set | 5 | 414,62 € |
| ZentralEinkauf AG | Standard Mikrofon | 6 | 46,92 € |
| SüdImport GmbH | Kompakt Mehl | 6 | 263,35 € |
| TopWaren AG | Kompakt Mütze | 6 | 548,05 € |
| Europarts KG | Eco Mikrofon | 9 | 948,13 € |
Jede Zelle enthält genau einen Wert. Keine Listen, keine Komma-getrennten Einträge.
Alle Nicht-Schlüssel-Attribute hängen vollständig vom Primärschlüssel ab.
Der Kategoriename wird nicht bei jedem Produkt wiederholt → eigene Tabelle mit ID.
Fremdschlüssel verhindern, dass Bestellungen auf nicht existierende Kunden verweisen.
DATE statt Text → Sortierung funktioniert. DECIMAL statt Text → Rechnen funktioniert.