Bussola r2uInizio · dodici corsi visivi

SQL e database · 16 min

Il softwareMappa del corso

Normalizzazione: un fatto, un posto

Se lo stesso telefono sta in tre tabelle, una delle tre mentirà. La forma normale è un disegno, non un voto scolastico.

Il disegno

Stessi fatti, due fogli. Clicca la differenza.

Tutto in una tabellaFatti spezzati
TelefonoCopiato su ogni ordineUna riga in clienti
Cambio numeroN UPDATE, ne dimentichi unoUn UPDATE
Lettura reportUn SELECT, spesso veloceJOIN (o vista)
QuandoDump, staging, erroreModello di sistema

In poche righe

1NF: celle atomiche, niente liste in una colonna. 2NF/3NF: gli attributi dipendono dalla chiave, non da un altro attributo (città che dipende dal CAP, non dall’ordine).

Denormalizzare è una scelta di lettura (report, cache). Prima il modello pulito, poi la copia voluta — con un owner su chi la aggiorna.

Disegna questo

Una tabella “ordini” con telefono del cliente ripetuto. Poi due tavoli: clienti e ordini, legati da cliente_id.

Un foglio, non un software. Se lo sai ridisegnare senza guardare, la lezione è tua.