5° Anno TEORIA 3. Un modello logico: il modello relazionale | Page 23

15 . Il modello relazionale Vers . 6.2 – Gennaio 2023

LA NORMALIZZAZIONE DELLE RELAZIONI

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