Normalizzazione di schemi relazionali (Basi Dati)
Ciao a tutti.
Ho questo simpatico (
) esercizio da risolvere: dato lo schema di relazione R(A,B,C,D,E,F,G) con dipendenze GF->AE, GE->ACD, F->G trovare una copertura canonica.
Qualcuno riuscirebbe a fornirmi la soluzione ?
Ho questo simpatico (

Qualcuno riuscirebbe a fornirmi la soluzione ?
Risposte
non li ho mai sopportate ste formalizzazioni sulle basi di dati....roba da europei?
Invece io trovo che siano l'unica cosa matematicamente interessante delle basi di dati (noiose per definizione). Non la loro mera applicazione, si intende, dato che sono solo algoritmi, ma lo studio per rendere più efficiente il tutto.
Per la copertura canonica, devi prima spezzare tutti gli attributi a destra $GF \to A, GF \to E, GE \to A, GE \to C, GE \to D, F\to G$. Ora eliminare tutti gli attributi estranei, cioè $F \to A, F \to E,...$ (dato che $F \to G$); e infine eliminare le dipendenze transitive, cioè $F \to A$, dato che $F \to GE$ e $GE \to A$.
Per la copertura canonica, devi prima spezzare tutti gli attributi a destra $GF \to A, GF \to E, GE \to A, GE \to C, GE \to D, F\to G$. Ora eliminare tutti gli attributi estranei, cioè $F \to A, F \to E,...$ (dato che $F \to G$); e infine eliminare le dipendenze transitive, cioè $F \to A$, dato che $F \to GE$ e $GE \to A$.
Quindi la copertura canonica è questa?
F->E, GE->A,GE->C,GE->D,F->G
F->E, GE->A,GE->C,GE->D,F->G
Sì.
Ti ringrazio

Altro problema...questa volta si tratta di normalizzazione in BCNF, più precisamente l'algoritmo di analisi.
Esempio: Telefoni(Prefisso,Numero,Località,Abbonato,Via) con df PN -> LAV, L->P
L->P viola la BCNF, di conseguenza decompongo R in due schemi R1(L,P) e R2(L,N,A,V). Ora dovrei calcolare le proiezioni delle dipendenze di R su R1 e R2 e rifare il procedimento. Quello che non ho capito è come faccio a calcolarle.
Esempio: Telefoni(Prefisso,Numero,Località,Abbonato,Via) con df PN -> LAV, L->P
L->P viola la BCNF, di conseguenza decompongo R in due schemi R1(L,P) e R2(L,N,A,V). Ora dovrei calcolare le proiezioni delle dipendenze di R su R1 e R2 e rifare il procedimento. Quello che non ho capito è come faccio a calcolarle.
