15 . Il modello relazionale Vers . 6.2 – Gennaio 2023
DEF : Una forma normale è una proprietà di uno schema relazionale che ne garantisce la qualità misurata in assenza di determinati difetti . DEF : La normalizzazione è un procedimento che serve a trasformare uno schema che presenta anomalie ( schema non normalizzato ) in uno equivalente ( con lo stesso contenuto informativo ) in cui tali anomalie sono state eliminate ( schema normalizzato ).
Quando uno schema relazionale non è normalizzato può comportare comportamenti non desiderati che possono compromettere le operazioni di congruenza durante le operazioni di : - inserimento dei dati ; -aggiornamento dei dati ; -cancellazione dei dati ;
Vediamo quali anomalie si possono avere considerando il seguente esempio esplicativo .
Esempio : Consideriamo la seguente relazione Magazzino che rappresenta lo schema di un magazzino di accessori per l ’ auto . In questo schema un cliente può ordinare più accessori ed ogni accessorio può essere ordinato da più clienti . La relazione è rappresentata dalla seguente tabella :
CodCli |
Indirizzo |
Città |
Cap |
CodAcc |
Descrizione |
Prezzo |
Quantità |
|
Via Po , 23 |
Pisa |
56100 |
|
Batteria |
100,00 |
3 |
C01 |
Via Po , 23 |
Pisa |
56100 |
M12 |
Radiatore |
75,00 |
1 |
C01 |
Via Po , 23 |
Pisa |
56100 |
M04 |
Antenna |
25,00 |
3 |
C02 |
Via Mori , 1 |
Napoli |
80100 |
M03 |
Batteria |
100,00 |
2 |
C02 |
Via Mori , 1 |
Napoli |
80100 |
M12 |
Radiatore |
75,00 |
1 |
C03 |
Via Ugo , 8 |
Roma |
00100 |
M03 |
Batteria |
100,00 |
2 |
La chiave della relazione è rappresentata dalla coppia di attributi ( CodCli , CodAcc )
a ) anomalie di inserimento :
• non è possibile inserire un nuovo cliente senza inserire i dati relativi agli accessori ordinati
• non è possibile inserire un nuovo accessorio senza inserire i dati relativi al cliente
b ) anomalie di aggiornamento :
• per modificare l ’ indirizzo di un cliente occorre modificare tutte le ennuple in cui compare
• per modificare la descrizione di un accessorio occorre modificare tutte le ennuple in cui compare
Se le modifiche fossero parziali si lascerebbe la base dei dati in uno stato detto inconsistente
c ) anomalie di cancellazione :
• cancellando la ennupla ( C01 , M04 ) si perdono le informazioni relative all ’ accessorio M04 ( Batteria )
• cancellando la ennupla ( C03 , M03 ) si perdono le informazioni relative al cliente C03
Queste anomalie si verificano perché abbiamo rappresentato informazioni eterogenee tra loro con un ’ unica relazione .
Autore : Rio Chierego ( email : riochierego @ libero . it - sito web : www . riochierego . it ) Pag . 23