Pagina 1 di 1

Basi di dati - Normalizzazione

MessaggioInviato: 1 lug 2018, 23:09
da elettro1
Buonasera, vorrei che qualcuno così gentile correggesse questo esercizio sulla normalizzazione

1) Si vuole realizzare un database relativo a palinsesti televisivi. E’ stata a tal fine costruita, da un inesperto progettista, un’unica tabella descritta dai seguenti attributi:

(codRete, nome_rete, frequenza_rete, codProgramma, titolo, tipo_programma, data_programmazione, ora_programmazione, codPubblicità, descrizione, durata, minuto_pubblicità)

Nell'ipotesi che: i) ogni rete definisca il proprio palinsesto; ii) durante ogni programma possano essere inserite più interruzioni pubblicitarie, se ne determini la chiave e si individuino, esplicitandole, le dipendenze funzionali. Sulla base di queste si proceda alla normalizzazione in terza forma normale, preservando le dip. funzionali.

che ho risolto in questo modo:
CodRete-> nome_rete,frequenza_rete DIPENDENZA PARZIALE
CodProgramma-> titolo, tipo_programma,data_programmazione,ora_programmazione DIPENDENZA PARZIALE
CodRete ->CodProgramma (ogni rete definisca il proprio palinsesto) DIPENDENZA TRANSITIVA
codPubblicità-> descrizione,durata DIPENDENZA PARZIALE
codProgramma,codPubblicità -> minuto_pubblicità (durante ogni programma possano essere inserite più interruzioni pubblicitarie) DIPENDENZA PARZIALE

CHIAVE(CodRete,codPubblicità)

Re: Basi di dati - Normalizzazione

MessaggioInviato: 9 lug 2018, 20:17
da DavideDaSerra
Secondo me manca la 2NF -> (dipendenza totale dalla chiave), perché

A-> BC non è in 2NF
D-> EFGH non è in 2NF
I-> JK non è in 2NF [dipendenza parziale]
DI -> L non è in 3NF (ma non in BCNF) [L non è ne primo ne DI è superchiave], ma è in 2NF perché dipende completamente dalla chiave

chiave: AI

(scusa ma ho dato dei nomi "progressivi" alle varie colonne per maggiore, mia, chiarezza)

A questo punto dovresti procedere con una decomposizione BINARIA e ottenere uno schema "normalizzato", verificare che sia in 3NF quindi verificare la preservazione delle FD, eventualmente appplicando l'algoritmo XPIUG

Inoltre secondo me è "semanticamente" sbagliata D-> EFGH, ragionevolmente è
programma,rete -> data,ora,...

(il programma "FORUM" può andare in onda sia su ITALIA1 che su CANALE5, ma in orari diversi)

Re: Basi di dati - Normalizzazione

MessaggioInviato: 9 lug 2018, 21:47
da DavideDaSerra
Scusa, non ho fatto in tempo a esitare: In realtà è data,ora,rete -> idprogramma, idprogramma-> titolo... come avevo scritto prima Un programma avrebbe potuto andare in onda una sola volta con lo stesso id