1. Il Concetto di Integrità Referenziale
L'integrità referenziale è un principio fondamentale dei database relazionali che garantisce la coerenza logica dei dati distribuiti su più tabelle collegate tramite chiavi esterne (Foreign Key).
Data una tabella dipendente (figlia) contenente una chiave esterna che punta a una tabella principale
(madre), ogni valore della chiave esterna deve corrispondere a una chiave primaria esistente
nella tabella madre, oppure deve essere rigorosamente vuoto (NULL), se
consentito.
2. Anomalie ed Errori Prevenuti
Senza il controllo dell'integrità referenziale imposto dal DBMS, si incorrerebbe in gravi problemi di consistenza:
3. Politiche di Azione (ON DELETE / ON UPDATE)
Quando si interviene su un record della tabella principale (modifica o cancellazione), il DBMS applica regole configurate dallo sviluppatore:
| Politica SQL | Comportamento del DBMS |
|---|---|
| RESTRICT / NO ACTION | Blocca l'operazione se esistono record dipendenti collegati, prevenendo qualsiasi perdita accidentale di dati. |
| CASCADE | Propagazione automatica: cancella o aggiorna a cascata tutti i record figli associati nella tabella dipendente. |
| SET NULL / SET DEFAULT | Mantiene il record dipendente ma rimuove il riferimento impostando la chiave esterna a
NULL o a un valore predefinito. |
4. Simulatore Interattivo: Test delle Politiche di Integrità
Simula l'effetto delle diverse politiche di vincolo referenziale eseguendo operazioni di cancellazione su tabelle correlate.