lezione 06

design di schema

modellare dati con integrità e chiarezza.

livello: base durata: 28 min output: schema pulito badge: schema design

entità

definisci entità principali e relazioni prima di creare tabelle.

create table clienti (
  id serial primary key,
  nome text not null
);

chiavi

create table ordini (
  id serial primary key,
  cliente_id int references clienti(id)
);

normalizzazione

mantieni dati coerenti separando entità e evitando duplicazioni.

indici

indicizza colonne usate nei join e nei filtri frequenti.

panoramica

In questo capitolo su design di schema, modellare dati con integrità e chiarezza. L'obiettivo è trasformare i concetti in micro-pattern riutilizzabili con esempi piccoli e verificabili.

Lavora in sequenza: leggi, prova, modifica gli snippet e annota i trade-off principali (performance, leggibilità, manutenzione).

badge: schema design

obiettivi

  • capire e applicare entità in uno scenario reale
  • capire e applicare chiavi in uno scenario reale
  • capire e applicare normalizzazione in uno scenario reale
  • capire e applicare indici in uno scenario reale

scheda rapida

SELECT categoria, COUNT(*) AS tot
FROM prodotti
WHERE attivo = TRUE
GROUP BY categoria
ORDER BY tot DESC
LIMIT 5;

Adatta questo scheletro agli esempi della lezione e sostituisci i dati con il tuo dominio.

tips

  • usa alias chiari
  • filtra presto con WHERE
  • controlla i piani di esecuzione
  • normalizza per ridurre duplicazioni
  • definisci PK/FK
  • usa nomi consistenti

tip: Uno schema chiaro è la base di ogni query affidabile.

mini progetto

Progetta schema per catalogo prodotti.

  • identifica entità
  • definisci relazioni
  • normalizza
  • crea tabelle

output atteso: uno script o query ripetibile con risultati verificabili.

checklist

  • ho eseguito gli snippet e controllato l'output
  • ho annotato almeno 2 trade-off
  • ho completato il mini progetto
  • ho salvato un riepilogo personale
start a brief