LA NORMALIZZAZIONE. ESEMPIO DI NORMALIZZAZIONE(1FN) IDAziendaRagioneSocialePIVANomeSocioQuotaSocio 1F.lli Damatino spa45455555555 Roberto Damatino 20%

Slides:



Advertisements
Presentazioni simili
Informatica II – Basi di Dati (08/09) – Parte 1
Advertisements

Il raffinamento dello schema e la normalizzazione nei database relazionali Eugenio Di Sciascio.
In quanto il calore scambiato dipende dal in quanto il calore scambiato dipende dal nel seguito di questo corso indicheremo il calore infinitesimo scambiato.
Creazione di archivi tramite Data Base
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità B2 Il modello relazionale.
Normalizzazione Forme Normali.
Le base di dati database.
MODELLO RELAZIONALE La relazione su n insiemi A1, A2….,An è un sottoinsieme dell’ insieme di tutte le n-uple a1, a2,….,an che si possono costruire.
Biglietti e Ritardi: schema E/R
Data warehousing con SQL Server
Biglietti e Ritardi: schema E/R
Biglietti: schema E/R.
Biglietti: schema E/R.
1 Biglietti: schema E/R. 2 Biglietti: albero degli attributi.
Progettazione Concettuale: Il modello Entità-Relazioni
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
L’uso dei database in azienda
La Normalizzazione. 27 January, slide 2 Le nuove tecnologie Software Tabelle, unicità e chiavi Ciascuna riga di una tabella deve esere unica Ci.
EQUAZIONI DI PRIMO GRADO
LA PROGETTAZIONE LOGICA
Unità didattica 3: Normalizzazione delle relazioni e
Normalizzazione Le forme normali certificano che la base di dati soddisfa criteri di qualità che mirano ad evitare le ridondanze e i conseguenti effetti.
Strategia bottom-up Nella strategia bottom-up le specifiche iniziali sono suddivise in componenti via via sempre più piccole, fino a descrivere frammenti.
Esercizio 1 Convertire il seguente DTD (esercizio 1 sui DTD) in XML Schema:
IL GIOCO DELLA LOGICA.
Forme normali.
Implementare un modello di dati
Motivazione allo studio
Introduzione ai database relazionali
Progettazione di Database: Esercizi
TECNOLOGIE DELLINFORMAZIONE E DELLA COMUNICAZIONE PER LE AZIENDE Materiale di supporto alla didattica.
Il modello ER Proposto da Peter Chen nel 1976 rappresenta uno standard per la progettazione concettuale (in particolare per le basi di dati) Ha una rappresentazione.
Progettare un database
Introduzione a Oracle 9i
Sistemi di Elaborazione delle Informazioni Mod.I.
La Normalizzazione. 2 May, slide 2 Le nuove tecnologie Software Normalizzazione Normalizzazione è il processo di semplificazione di un data base.
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
BASI DI DATI - MySql Centro di Ateneo per i Servizi Informatici
MODELLO E/R.
LE EQUAZIONI DI PRIMO GRADO
1 Sistemi Informativi e Servizi in Rete Università degli Studi di Brescia Facoltà di Ingegneria Parsing di documenti XML Esercizi.
I DBMS BASI DI DATI (DATABASE) Insieme organizzato di dati utilizzati
FRAZIONI E NUMERI DECIMALI
Logica F. orilia. Lezz Lunedì 4 Novembre 2013.
“o piccolo” Siano f e g entrambi infiniti o infinitesimi per
“o piccolo” Siano f e g entrambi infiniti o infinitesimi per
Progettazione di una base di dati relazionale Vincoli.
Strategie di progetto Si possono utilizzare le strategie tipiche dello sviluppo di un processo di ingegnerizzazione (es. ingegneria del software). Strategie.
Progettazione di una base di dati relazionale Terza forma normale.
Join Se ciascuna tupla di ciascun operando contribuisce ad almeno una tupla del risultato il join si dice completo. Se per alcune tuple non è verificata.
Teoria della Normalizzazione Basi di Dati 2010/11
S. Costantini 06/05/2006 (parte del materiale è tratto da slide del 2001 di Ceri-Atzeni) Normalizzazione di Schemi.
Metodologie e modelli per il progetto. 2 Introduzione alla progettazione Il problema: progettare una base di base di dati a partire dai suoi requisiti.
1 Esami Esame scritto: Tra 21 e 25 domande: 20 domande chiuse (20 punti),  5 domande aperte (10 punti) 1½ ore Esame orale/applicativo: Esercizi usando.
Eprogram informatica V anno.
Cloud informatica V anno.
NORMALIZZAZIONE ESERCIZI. INTRODUZIONE La modellazione E-R ci ha consentito di descrivere schemi relazionali Lo strumento base per la modellizzazione.
Corso integrato di Matematica, Informatica e Statistica Informatica di base Linea 1 Daniela Besozzi Dipartimento di Informatica e Comunicazione Università.
ICT e Sistemi informativi Aziendali Materiale di supporto alla didattica.
Normalizzazione. Introduzione Nell’organizzazione tradizionale degli archivi, si verificano alcuni problemi, quali: Ridondanza dei dati (gli stessi dati.
1 “ Le Basi di Dati ”. 2 Parte 5: Tabelle –Creazione di una tabella –Indici e chiavi primarie –Relazioni e integrità referenziale Basi di Dati Struttura.
Access Breve introduzione. Componenti E’ possibile utilizzare Access per gestire tutte le informazioni in un unico file. In un file di database di Access.
Il modello relazionale. Modello Relazionale 2 Dal modello concettuale a quello logico Una volta stabilita la rappresentazione concettuale della realtà.
BASI DATI: modello relazionale BIOINGEGNERIA ELETTRONICA ED INFORMATICA Lezione IIIb - AA 2014/20151.
Tabelle Pivot Foglio elettronico. Introduzione Creazione di una tabella Pivot Vediamo come si deve operare per ottenere dalla nostra tabella un report.
Basi di dati - 09Marco Maggini1 Forme normali forme normali  Le forme normali verificano la qualità di uno schema di una base di dati relazionale  Presenza.
Normalizzazione. Forme normali Evitare la ripetizione e la ridondanza Evitare alcuni problemi in modifiche/cancellazioni Obiettivo: Normalizzazione =>
Logica Lez. 5, Varzi su affermazione del conseguente Malgrado alcuni esempi di questa forma siano argomentazioni valide, altri non lo sono.
Un evento è un fatto che può accadere o non accadere. Se esso avviene con certezza si dice evento certo, mentre se non può mai accadere si dice evento.
Esercizi.
Transcript della presentazione:

LA NORMALIZZAZIONE

ESEMPIO DI NORMALIZZAZIONE(1FN) IDAziendaRagioneSocialePIVANomeSocioQuotaSocio 1F.lli Damatino spa Roberto Damatino 20% Angela Damatino 34% Marcello Damatino 46% 2Pellicano Pelli spa John Pelllicano 75% Kharim Pellicano 25% SOCI_AZIENDE 1.Verificare che la relazione sia in prima formale (1FN) ovvero che non ci siano attributi non atomici. La relazione SOCI_AZIENDE non è in 1FN perché NomeSocio e QuotaSocio sono attributi multivalore (non atomici). Se la relazione contiene attributi multivalore, si creano due relazioni: la prima contenente tutti i campi atomici e la seconda contenente tutti i campi multivalore raggruppati in base a legami logici ed aggiungendo la chiave esterna verso la prima relazione.

ESEMPIO DI NORMALIZZAZIONE(1FN) IDAziendaRagioneSocialePIVANomeSocioQuotaSocio 1F.lli Damatino spa Roberto Damatino 20% Angela Damatino 34% Marcello Damatino 46% 2Pellicano Pelli spa John Pelllicano 75% Kharim Pellicano 25% SOCI_AZIENDE Se la relazione contiene attributi multivalore, si creano due relazioni: la prima contenente tutti i campi atomici e la seconda contenente tutti i campi multivalore raggruppati in base a legami logici ed aggiungendo la chiave esterna verso la prima relazione. IDAziendaRagioneSocialePIVA 1F.lli Damatino spa Pellicano Pelli spa AZIENDE IDSocioNomeSocioQuotaSocioIDAzienda 1Roberto Damatino 20%1 2Angela Damatino 34%1 3Marcello Damatino 46%1 4John Pelllicano 75%2 5Kharim Pellicano 25%2 SOCI

ESEMPIO DI NORMALIZZAZIONE(1FN) SOCI_AZIENDE(IDAzienda,RagioneSociale,PIVA,NomeSocio,QuotaSocio) AZIENDE(IDAzienda,RagioneSociale,PIVA) SOCI(IDSocio,NomeSocio,QuotaSocio,IDAzienda) RELAZIONE NON 1FN RELAZIONI IN 1FN

ESEMPIO DI NORMALIZZAZIONE(2FN) NUMCONTODATAMOVINTESTATARIOIMPORTO /11/ :01.01MARIO ROSSI-€ 56, /11/ :11.56GIUSEPPE VERDI € 780, /11/ :13.09MARIO ROSSI € 190,78 MOVIMENTI_CC 2. Se la relazione è in 1FN, individuare le dipendenze funzionali e le chiavi candidate: (NUMCONTO,DATAMOV)-> (INTESTATARIO,IMPORTO) (chiave primaria) NUMCONTO -> INTESTATARIO MOVIMENTI_CC(NUMCONTO,DATAMOV,INTESTATARIO,IMPORTO) La dipendenza NUMCONTO -> INTESTATARIO richiede una trasformazione dello schema della relazione perché INTESTATARIO (attributo non-chiave) non dipende dall’intera chiave ma solo da un attributo chiave NUMCONTO.

ESEMPIO DI NORMALIZZAZIONE(2FN) NUMCONTODATAMOVINTESTATARIOIMPORTO /11/ :01.01MARIO ROSSI-€ 56, /11/ :11.56GIUSEPPE VERDI € 780, /11/ :13.09MARIO ROSSI € 190,78 MOVIMENTI_CC 2.a Si deve costruire una nuova relazione con tutti gli attributi della dipendenza funzionale. La dipendenza NUMCONTO -> INTESTATARIO richiede una trasformazione dello schema della relazione perché INTESTATARIO non dipende dall’intera chiave. CONTICORRENTI(NUMCONTO,INTESTATARIO) 2.b Il determinante della dipendenza funzionale diventa chiave primaria della relazione. CONTICORRENTI(NUMCONTO,INTESTATARIO)

ESEMPIO DI NORMALIZZAZIONE(2FN) NUMCONTODATAMOVINTESTATARIOIMPORTO /11/ :01.01MARIO ROSSI-€ 56, /11/ :11.56GIUSEPPE VERDI € 780, /11/ :13.09MARIO ROSSI € 190,78 MOVIMENTI_CC 2.c Si deve creare una seconda relazione rimuovendo dalla relazione di partenza gli attributi determinati dalla dipendenza. Il determinante della dipendenza diventa chiave esterna verso la prima relazione. MOVIMENTI_CC(NUMCONTO,DATAMOV,IMPORTO) NUMCONTO diventa chiave esterna verso la relazione CONTICORRENTI.

ESEMPIO DI NORMALIZZAZIONE(2FN) NUMCONTODATAMOVINTESTATARIOIMPORTO /11/ :01.01MARIO ROSSI-€ 56, /11/ :11.56GIUSEPPE VERDI € 780, /11/ :13.09MARIO ROSSI € 190,78 MOVIMENTI_CC NUMCONTODATAMOVIMPORTO /11/ :01.01-€ 56, /11/ :11.56 € 780, /11/ :13.09 € 190,78 MOVIMENTI_CC NUMCONTOINTESTATARIO MARIO ROSSI GIUSEPPE VERDI CONTICORRENTI

ESEMPIO DI NORMALIZZAZIONE(2FN) Ogni relazione con chiave primaria composta da un solo attributo è già in 2FN. Ad es. STUDENTI(Matricola,Cognome,Nome,DataNascita,NumTelefono) La relazione è già in 2FN perché tutti i campi sono atomici (1FN) e tutti gli attributi non- chiave ovviamente dipendono dall’intera chiave primaria (formata da un solo attributo). VOCIFATTURE(IdProdotto,NumFattura,NomeProdotto,Quantità,Prezzo, TotaleParziale) La relazione è in 1FN ma non è in 2FN perché l’attributo NomeProdotto dipende dall’attributo IdProdotto.

ESEMPIO DI NORMALIZZAZIONE(3FN) La 3FN si ha se la relazione è in 2FN e tutti gli attributi non-chiave non dipendono da altri attributi non-chiave (dipendenza transitiva). Si applicano le stesse regole per la 2FN. Ad es. STUDENTI(Matricola,Cognome,Nome,DataNascita, LuogoNascita,NumAbitanti) La relazione è già in 2FN perché tutti i campi sono atomici (1FN), tutti gli attributi non- chiave dipendono dall’intera chiave primaria (formata da un solo attributo) ma NumAbitanti (attributo non-chiave) dipende da LuogoNascita (attributo non- chiave). Applicando le stesse regole per la 2FN, si ottengono le seguenti relazioni: STUDENTI(Matricola,Cognome,Nome,DataNascita,CodCittà) CITTA’(CodCittà,NomeCittà,NumAbitanti)

ESERCIZI NORMALIZZAZIONE IDContattoContattoNumTelefonoDataOraChiamataDurataSecondi 1Mario Rossi /01/ /01/ /01/ Giuseppe Verdi /02/ /02/ CONTATTI ESERCIZIO N.1: IDPRODOTTOPRODOTTOQUANTITA'PREZZODATACLIENTEINDIRIZZOCLIENTECITTACLIENTE SGFSAMSUNG GEAR FIT34€ 299,0007/02/2015Poviano srlVia delle Povie, 78Barletta SGASAMSUNG GALAXY A710€ 499,0008/02/2015Rizzuccio sncVia delle Rizze, 64Cerignola AI6APPLE IPHONE 523€ 599,0011/02/2015Poviano srlVia delle Povie, 78Barletta HA7HUAWEI ASCEND 710€ 159,0014/02/2015Rizzuccio sncVia delle Rizze, 64Cerignola AP7ALCATEL POP C76€ 139,0016/02/2015Maffiona sncViale delle Maffie, 12Trani VENDITE ESERCIZIO N.2:

ESERCIZI NORMALIZZAZIONE ESERCIZIO N.3: MOVIMENTI(IDPRODOTTO, CODMAGAZZINO, DATAMOVIMENTO, NOMEPRODOTTO,MAGAZZINO,QUANTITA’) ESERCIZIO N.4: CONCESSIONARIE(IDCONC,NOME,CASAAUTO,INDIRIZZO,MODELLI_IN_VENDITA) ESERCIZIO N.5: TABLET(ID,NOMEMODELLO,MARCA,NAZIONEMARCA,SITOWEB)

ESEMPIO SVOLGIMENTO ESERCIZIO Portare in 3FN (Terza Forma Normale) la relazione seguente: IDFATTURADATAFATTURAIDPRODOTTONOMEPRODOTTOQUANTITA’ PREZZO MAGAZZINOKMQ 5613/02/ KONDER DELIS34 € 0,50 CEDI /02/ KONDER BUEN70 € 0,90 CEDI /02/ KONDER DELIS90 € 1,50 CEDI 1900 VOCIFATTURE(IdFattura,DataFattura,IdProdotto,NomeProdotto,Quantità,Prezzo, Magazzino,Kmq)

ESEMPIO SVOLGIMENTO ESERCIZIO La relazione FATTURE è in 1FN perché tutti gli attributi sono atomici. Verificare che la relazione sia in Prima Forma Normale (1FN) individuando l’eventuale presenza di attributi multivalore (non atomici). VOCIFATTURE(IdFattura,DataFattura,IdProdotto,NomeProdotto,Quantità,Prezzo, Magazzino,Kmq) IDFATTURADATAFATTURAIDPRODOTTONOMEPRODOTTOQUANTITA’ PREZZO MAGAZZINOKMQ 5613/02/ KONDER DELIS34 € 0,50 CEDI /02/ KONDER BUEN70 € 0,90 CEDI /02/ KONDER DELIS90 € 1,50 CEDI 1900

2FN: DIPENDENZE PARZIALI Verificare che la relazione sia in Seconda Forma Normale (2FN) individuando l’eventuale presenza di dipendenze parziali. La relazione FATTURE non è in 2FN perché contiene le seguenti dipendenze parziali:  IDFATTURA - > DATAFATTURA  IDPRODOTTO -> (NOMEPRODOTTO,MAGAZZINO,KMQ) VOCIFATTURE(IdFattura,DataFattura,IdProdotto,NomeProdotto,Quantità,Prezzo, Magazzino,Kmq) IDFATTURADATAFATTURAIDPRODOTTONOMEPRODOTTOQUANTITA’ PREZZO MAGAZZINOKMQ 5613/02/ KONDER DELIS34 € 0,50 CEDI /02/ KONDER BUEN70 € 0,90 CEDI /02/ KONDER DELIS90 € 1,50 CEDI 1900

2FN: DIPENDENZE PARZIALI La dipendenza parziale IDFATTURA - > DATAFATTURA si risolve creando una nuova relazione FATTURE che contiene entrambi gli attributi della dipendenza IDFATTURA e DATAFATTURA e con chiave primaria l’attributo determinante (a sinistra) IDFATTURA: FATTURE(IDFATTURA,DATAFATTURA) Mentre dalla relazione di partenza VOCIFATTURE si devono togliere gli attributi determinati (a destra nella dipendenza) DATAFATTURA e IDFATTURA diventa chiave esterna verso FATTURE: VOCIFATTURE(IdFattura,IdProdotto,NomeProdotto,Quantità,Prezzo,Magazzino,Kmq)

2FN: DIPENDENZE PARZIALI La dipendenza parziale IDPRODOTTO -> (NOMEPRODOTTO,MAGAZZINO,KMQ) si risolve creando una nuova relazione PRODOTTI che contiene entrambi gli attributi della dipendenza IDPRODOTTO, NOMEPRODOTTO, MAGAZZINO e KMQ e con chiave primaria l’attributo determinante (a sinistra della dipendenza) IDPRODOTTO: PRODOTTI(IDPRODOTTO,NOMEPRODOTTO,MAGAZZINO,KMQ) Mentre dalla relazione di partenza VOCIFATTURE si devono togliere gli attributi determinati (a destra nella dipendenza) NOMEPRODOTTO e IDPRODOTTO diventa chiave esterna verso PRODOTTI : VOCIFATTURE(IDFATTURA,IDPRODOTTO,QUANTITÀ,PREZZO)

2FN: DIPENDENZE PARZIALI Si può affermare che la relazione VOCIFATTURE(IDFATTURA,IDPRODOTTO,QUANTITÀ,PREZZO) è in 2FN perché è in 1FN e non contiene alcuna dipendenza parziale. Si può affermare che la relazione FATTURE(IDFATTURA,DATAFATTURA) è in 2FN perché è in 1FN e non contiene alcuna dipendenza parziale. Si può affermare che la relazione PRODOTTI(IDPRODOTTO,NOMEPRODOTTO,MAGAZZINO,KMQ) è in 2FN perché è in 1FN e non contiene alcuna dipendenza parziale.

3FN: DIPENDENZE TRANSITIVE Verificare che le relazioni siano in Terza Forma Normale (3FN) individuando l’eventuale presenza di dipendenze transitive. La relazione VOCIFATTURE(IDFATTURA,IDPRODOTTO,QUANTITÀ,PREZZO) è in 3FN perché è in 2FN e tutti gli attributi non-chiave dipendono direttamente dalla chiave primaria (non contiene dipendenze transitive). La relazione FATTURE(IDFATTURA,DATAFATTURA) è in 3FN perché è in 2FN e tutti gli attributi non-chiave dipendono direttamente dalla chiave primaria (non contiene dipendenze transitive). La relazione PRODOTTI(IDPRODOTTO,NOMEPRODOTTO,MAGAZZINO,KMQ) NON è in 3FN perché contiene la seguente dipendenza transitiva: MAGAZZINO -> KMQ

ESEMPIO SVOLGIMENTO ESERCIZIO La dipendenza parziale MAGAZZINO -> KMQ si risolve creando una nuova relazione MAGAZZINI che contiene entrambi gli attributi della dipendenza MAGAZZINO e KMQ e con chiave primaria l’attributo determinante (a sinistra) MAGAZZINO : MAGAZZINI(MAGAZZINO,KMQ) Mentre dalla relazione di partenza PRODOTTI si devono togliere gli attributi determinati (a destra nella dipendenza) KMQ: PRODOTTI(IDPRODOTTO,NOMEPRODOTTO,MAGAZZINO) PRODOTTI(IDPRODOTTO,NOMEPRODOTTO,MAGAZZINO,KMQ) PRODOTTI(IDPRODOTTO, NOMEPRODOTTO, MAGAZZINO) MAGAZZINI(MAGAZZINO,KMQ)

3FN: DIPENDENZE TRANSITIVE La relazione VOCIFATTURE(IDFATTURA,IDPRODOTTO,QUANTITÀ,PREZZO) è in 3FN perché è in 2FN e tutti gli attributi non-chiave dipendono direttamente dalla chiave primaria (non contiene dipendenze transitive). La relazione FATTURE(IDFATTURA,DATAFATTURA) è in 3FN perché è in 2FN e tutti gli attributi non-chiave dipendono direttamente dalla chiave primaria (non contiene dipendenze transitive). La relazione PRODOTTI(IDPRODOTTO,NOMEPRODOTTO,MAGAZZINO) è in 3FN perché è in 2FN e tutti gli attributi non-chiave dipendono direttamente dalla chiave primaria (non contiene dipendenze transitive). La relazione MAGAZZINI(MAGAZZINO,KMQ) è in 3FN perché è in 2FN e tutti gli attributi non-chiave dipendono direttamente dalla chiave primaria (non contiene dipendenze transitive).

CONCLUSIONE VOCIFATTURE(IDFATTURA,DATAFATTURA,IDPRODOTTO,NOMEPRODOTTO, QUANTITÀ,PREZZO,MAGAZZINO,KMQ) VOCIFATTURE(IDFATTURA,IDPRODOTTO,QUANTITÀ,PREZZO) FATTURE(IDFATTURA,DATAFATTURA) PRODOTTI(IDPRODOTTO,NOMEPRODOTTO,MAGAZZINO) MAGAZZINI(MAGAZZINO,KMQ)

PRIMA FORMA NORMALE (1FN) IDFATTURADATAFATTURAIDPRODOTTONOMEPRODOTTOQUANTITA’MAGAZZINOKMQRESPONSABILE 5613/02/ KONDER DELIS34CEDI 1900GORI CLAUDIO ROSSI GIANNI 8714/02/ KONDER BUEN70CEDI 2750FOTI UGO 8714/02/ KONDER DELIS90CEDI 1900GORI CLAUDIO ROSSI GIANNI IDRESPONSABILERESPONSABILEMAGAZZINO 1GORI CLAUDIOCEDI 1 2ROSSI GIANNICEDI 1 3FOTI UGOCEDI 2 IDFATTURADATAFATTURAIDPRODOTTONOMEPRODOTTOQUANTITA’MAGAZZINOKMQ 5613/02/ KONDER DELIS34CEDI /02/ KONDER BUEN70CEDI /02/ KONDER DELIS90CEDI 1900 FATTURE RESPONSABILI

PRIMA FORMA NORMALE (1FN) FATTURE(IDFATTURA,DATAFATTURA,IDPRODOTTO,NOMEPRODOTTO,QUANTITA’, MAGAZZINO,KMQ,RESPONSABILE) FATTURE(IDFATTURA,DATAFATTURA,IDPRODOTTO,NOMEPRODOTTO,QUANTITA’, MAGAZZINO,KMQ) RESPONSABILI(IDRESPONSABILE,RESPONSABILE,MAGAZZINO)