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

idbestellung_idprodukt_idproduktname_originalmengeeinzelpreis
27195357Deluxe Schwimmbrille6490.86
27297300Pro USB-Hub8871.91
27398332Standard Locher2339.28
27499233Leicht Gürtel9488.01
275100449Smart Mehl2433.11
276101258Robust Trinkflasche9654.68
277102222Ultra Shampoo4497.55
278103105Smart Regal5244.42
279104171Eco Esstisch3845.00
28010524Basic Comic5709.85
281106266Ultra Säge Rot8575.06
28210898Mini Kaffee9848.12
283109250Deluxe Parfüm2289.91
284110146Basic Honig91.08
285112475Eco Felgenreiniger Grün9180.38
286113491Mini Gewürzset1077.45
287115288Maxi Napf4279.88
288116248Classic Kratzbrett9523.82
289117342Ultra Sonnenschirm8910.47
29011822Leicht Schwimmbrille8135.24
291119402Kompakt Stimmgerät7833.24
292120207Maxi Rasenmäher4459.17
293121431Deluxe Klebestift2491.97
294123424Ultra Hemd9791.40
295125313Premium Bildband1494.60
296126313Premium Bildband6494.60
297127312Deluxe Kugelschreiber1175.71
298128471Robust Ratgeber4499.08
299130469Smart Couchtisch8763.31
30013171Robust Saiten-Set426.24

🎯 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