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 14/20)

idbestellung_idprodukt_idproduktname_originalmengeeinzelpreis
39175241Basic Essig10369.84
39276269Kompakt Erde1630.98
39377371Eco Notenständer Silber611.30
39479181Pro Dübel-Set9243.06
39582463Pro Hochbeet1239.77
39683411Eco Dachbox Schwarz3770.37
3978657Maxi Spielzeugknochen2643.75
39887325Standard T-Shirt3948.83
3998948Pro Gartenstuhl8358.55
40090383Robust Gesichtscreme2212.15
40192291Pro Hemd9480.29
4029326Eco Lautsprecher1178.40
40394431Deluxe Klebestift9491.97
40495233Leicht Gürtel10488.01
40599336Standard Sofa2792.93
40610256Pro Bodylotion2433.41
407105420Basic Senf4446.71
408106397Kompakt Schlagzeugstöcke2472.01
40910822Leicht Schwimmbrille6135.24
410110403Kompakt Erde Weiß3174.11
411112322Leicht Gartenschlauch3308.11
412113393Standard Katzenstreu56.83
413115380Mini Schreibtisch3416.99
41411695Leicht Bürostuhl5891.40
41511752Classic Stiefel6878.59
416118465Pro Laptop8174.96
41712035Robust Sonnencreme2654.77
41812116Basic Dübel-Set8173.70
419125257Mini Wasserwaage9917.78
420126360Leicht Napf28.85

🎯 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