Datenmodell-Schulungskonsole

Interaktive Schulungsoberfläche für relationale Normalisierung in SQL und flexible Dokumentmodelle in MongoDB.

SQL + MongoDB
Relationen & Regeln
SQL-Track · Schritt 4 / 5

Normalisierung

Die Oberfläche zeigt den Weg von Excel-Rohdaten über Qualitätsprobleme und Bereinigung bis zur relational normalisierten Datenbank.

Schulungsfluss aktiv
Schritt 4: Normalisierung in die 3. Normalform — Aus 3 flachen Excel-Tabellen werden 8 verknüpfte Tabellen mit Fremdschlüsseln, Datentypen und Constraints. Jede Information existiert genau einmal.

📐 Entitäts-Beziehungs-Diagramm

┌─────────────────┐ ┌──────────────────┐ ┌──────────────────┐ │ kategorien │ │ lieferanten │ │ zahlungsarten │ ├─────────────────┤ ├──────────────────┤ ├──────────────────┤ │ PK id │ │ PK id │ │ PK id │ │ name │ │ name │ │ name │ └────────┬────────┘ └────────┬─────────┘ └────────┬─────────┘ │ │ │ │ 1:N │ 1:N │ 1:N ▼ ▼ ▼ ┌──────────────────────────────────┐ ┌──────────────────────────────────┐ │ produkte │ │ bestellungen │ ├──────────────────────────────────┤ ├──────────────────────────────────┤ │ PK id │ │ PK id │ │ produktname │ │ FK kunden_id → kunden.id │ │ FK kategorie_id → kategorien.id │ │ bestelldatum │ │ preis (DECIMAL) │ │ FK zahlungsart_id │ │ lagerbestand (INT) │ │ FK status_id → bestellstatus.id │ │ gewicht_kg (DECIMAL) │ │ bemerkung │ │ FK lieferant_id → lieferanten.id │ └───────────────┬──────────────────┘ └───────────────┬──────────────────┘ │ │ │ ┌───────────────────┐ │ │ N:M │ │ N:M │ └─────────────►│ bestellpositionen │◄─────────────┘ ├───────────────────┤ │ PK id │ │ FK bestellung_id │ │ FK produkt_id │ │ menge │ │ einzelpreis │ └───────────────────┘ ┌──────────────────────┐ ┌──────────────────┐ │ kunden │ │ bestellstatus │ ├──────────────────────┤ ├──────────────────┤ │ PK id │ │ PK id │ │ anrede (ENUM) │ │ name │ │ vorname │ └──────────────────┘ │ nachname │ │ straße │ │ plz (CHAR(5)) │ │ ort │ │ telefon │ │ email │ │ geburtsdatum(DATE)│ └──────────────────────┘ █ PK = Primary Key (Primärschlüssel) █ FK = Foreign Key (Fremdschlüssel) █ Feld

572 Datensätze (Seite 13/20)

idbestellung_idprodukt_idproduktname_originalmengeeinzelpreis
36116365Robust Säge10478.88
36218355Pro Leine10522.43
36320479Kompakt Blumentopf Blau10516.30
36423357Deluxe Schwimmbrille2490.86
3652662Eco Nagellack898.33
36629279Maxi Shampoo Rot1627.55
3673051Eco Kratzbrett1738.79
36832162Mini Kratzbrett11.71
36934312Deluxe Kugelschreiber3175.71
370376Classic Router3884.66
37139174Maxi Hörbuch295.18
3724030Classic Springseil6584.89
37341203Standard Sonnencreme6393.66
37443491Mini Gewürzset377.45
37544144Classic Käfig7548.99
37645443Robust Sachbuch5892.67
37746242Leicht Kratzbrett2432.27
37847191Mini Gitarre10152.55
3794986Maxi Fußmatten1358.33
3805269Pro Blumentopf6686.91
38153138Robust Bildband3381.68
38256457Robust Akkuschrauber6517.69
38358316Maxi Tagebuch Schwarz6582.06
38461484Standard Stimmgerät7675.20
38566117Premium Mehl2472.19
38667100Mini Zange2470.19
38769385Deluxe Gewürzset2121.47
38871491Mini Gewürzset177.45
38972449Smart Mehl10433.11
39074329Eco Drachen283.16

🎯 Kernpunkt: Auflösung der 1. Normalform

Aus einer Zelle mit mehreren Produkten werden separate Zeilen:

❌ VORHER (Excel)
BestellnummerProdukteMengen
B-20240001Kompakt Mehl; Kompakt Fahrradhelm; Robust Säge; Leicht Mülleimer; Robust Scheibe…10; 3; 5; 2; 10
BEST0002Robust Trinkflasche; Kompakt Kleiderschrank1; 4
B-20240003Eco Drachen; Smart Fahrradhelm4; 10
✅ NACHHER (Normalisiert)
BestellungProduktMengeEinzelpreis
1Kompakt Mehl10263.35
2Robust Trinkflasche1654.68
3Eco Drachen483.16
4Premium Verbandskasten47.33
5Robust Kartenspiel9834.62
6Ultra Motoröl7767.26
7Smart Sonnencreme1579.04
8Mini Gewürzset677.45
9Maxi Briefumschlag2910.38
10Mini Basketball448.68