Normalizzazione di uno schema relazionale.

Slides:



Advertisements
Presentazioni simili
RICERCA IN UN VETTORE.
Advertisements

RICERCA IN UN VETTORE. Metodi basati sul confronto di chiavi Si confrontano gli elementi del vettore V con lelemento (chiave K) che si vuole ricercare.
La Normalizzazione. 27 January, slide 2 Le nuove tecnologie Software Tabelle, unicità e chiavi Ciascuna riga di una tabella deve esere unica Ci.
Progettare una base di dati che permetta di gestire il problema descritto nel seguito, nei seguenti punti: 1. Definire uno schema Entità/Relazione che.
TECNOLOGIE DELLINFORMAZIONE E DELLA COMUNICAZIONE PER LE AZIENDE Materiale di supporto alla didattica.
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.
Progettazione di una base di dati relazionale Terza forma normale.
NORMALIZZAZIONE ESERCIZI. INTRODUZIONE La modellazione E-R ci ha consentito di descrivere schemi relazionali Lo strumento base per la modellizzazione.
ICT e Sistemi informativi Aziendali Materiale di supporto alla didattica.
Dai diagrammi ER alle basi di dati.. Entita  tabelle Persona Nome e cognome Codice fiscale Indirizzo completo Codice fiscaleNome e CognomeIndirizzo completo.
Normalizzazione. Introduzione Nell’organizzazione tradizionale degli archivi, si verificano alcuni problemi, quali: Ridondanza dei dati (gli stessi dati.
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.
PEZZO ANTIQUARIATO CLIENTE ID_CLIENTE NOME COGNOME COD.FISCALE VIA CITTA CAP PROV TEL ID_PEZZO_ANTIQ NOME DESCRIZIONE COSTO ANNO PROD. DIMENSIONI.
OSSERVAZIONE: Ci sono schemi di relazione che non sono “buoni” (quelli in cui sono rappresentati più concetti come lo schema Curriculum) in quanto presentano.
Illusioni ottiche Si muove o no, sale o scende C’è o non c’è. C’è da perdere la testa…
Basi di dati - Fondamenti
Il modello logico Il modello logico.
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning
Progettazione di una base di dati relazionale
Rileaborato da M. Lenzerini - Basi di dati
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Rielaborato da Atzeni et al., Basi di Dati, Mc-Graw Hill
Le operazioni relazionali
Rielaborato da Atzeni et al., Basi di Dati, Mc-Graw Hill
Secondo Compito: PROGETTAZIONE DI UN DATABASE Claudia Angione
PROGETTAZIONE DATABASE SECONDO COMPITO CAROLINA CASIELLO
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Rielaborato da Atzeni et al., Basi di Dati, Mc-Graw Hill
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Interrogazione di una base di dati relazionale
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Universita’ di Milano Bicocca Corso di Basi di Dati 1 in eLearning C
Rielaborato da Atzeni et al., Basi di Dati, Mc-Graw Hill
di Basi di Dati: Overview
Le operazioni relazionali (continua)
PROGETTAZIONE CONCETTUALE
Progettazione di una base di dati relazionale
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
COME SI CREA UNA TABELLA CON UNA CHIAVE ESTERNA
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Rielaborato da Atzeni et al., Basi di Dati, Mc-Graw Hill
Progettazione di una base di dati relazionale
Universita’ di Milano Bicocca Corso di Basi di Dati 1 in eLearning C
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Integrità referenziale
File con indice (sparso)
La normalizzazione delle relazioni
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Interrogazione di una base di dati relazionale
Interrogazione di una base di dati relazionale
Il modello relazionale
Si muove o no, sale o scende C’è o non c’è. C’è da perdere la testa…
Rielaborato da Atzeni et al., Basi di Dati, Mc-Graw Hill
I testi narrativi CHE COSA SONO E COME SONO FATTI.
Gli schemi concettuali
Introduzione alla normalizzazione
Basi di dati - Fondamenti
INTRODUZIONE A EXCEL Il foglio elettronico o foglio di calcolo è una tabella che contiene parole e numeri che possono essere elaborati applicando formule.
Partizionamento/accorpamento di concetti
Corso di Laurea in Conservazione e Restauro dei Beni Culturali
SQL per la modifica di basi di dati
OGGETTO E TIPO DI OGGETTO
Il modello relazionale
La concorrenza perfetta
Fogli di Calcolo Elettronici
Oltre il relazionale: modelli concettuali per dati aggregati
Selezione e Proiezione
Vincoli di Integrità Non tutte le combinazioni possibili di valori dei domini su cui è definita una relazione sono accettabili. Alcuni attributi possono.
Transcript della presentazione:

Normalizzazione di uno schema relazionale

Ma se i prodotti venduti con un ordine fossero di più di 2 ? Tabella che non rispetta alcuna delle forme normali (LA CHIAVE PRIMARIA E’ SOTTOLINEATA) N. ordine Data Codice Cliente Nome Cliente Città Cliente Codice Prod.1 Descriz Prod1 Q.tà Prod. 1 Prezzo Prod.1 Codice Prod.2 Descriz. Prod.2 Prezzo 82001 2/1/96 1001 Rossi CR 001 mele 100 1000 --- 82002 3/1/96 2239 Neri MI 002 uva 200 5000 40 82003 8/1/96 004 arance 30 500 Ma se i prodotti venduti con un ordine fossero di più  di 2 ? Aumentare il n. delle colonne non è una buona soluzione Ridondanza (Rossi) Cosa succede se Rossi cambia indirizzo ? (anomalia nella modifica) Un cliente non esiste finché non ordina almeno un prodotto (anomalia nell’inserimento) Cosa potrebbe succedere se elimino un ordine? (anomalia nella eliminazione

Prima forma normale Una tabella si dice in prima forma normale quando: tutte le sue righe hanno lo stesso numero di attributi una colonna contiene valori tutti dello stesso tipo non esistono due righe uguali l’ordine di inserimento non conta non esistono attributi ripetuti o composti.

Tabella che non rispetta alcuna delle forme normali (LA CHIAVE PRIMARIA E’ SOTTOLINEATA) N. ordine Data Codice Cliente Nome Cliente Città Cliente Codice Prod.1 Descriz Prod1 Q.tà Prod. 1 Prezzo Prod.1 Codice Prod.2 Descriz. Prod.2 Prezzo 82001 2/1/96 1001 Rossi CR 001 mele 100 1000 --- 82002 3/1/96 2239 Neri MI 002 uva 200 5000 40 82003 8/1/96 004 arance 30 500 1 2

Tabelle in prima forma normale TABELLA ORDINI N. ordine Data Codice Cliente Nome Cliente Città Cliente 82001 2/1/96 1001 Rossi CR 82002 3/1/96 2239 Neri MI 82003 8/1/96 0112 Gialli TABELLA DETTAGLI ORDINI N. ordine Codice Prod. Descr. Q.tà Prod. Prezzo Prod. 82001 001 mele 100 1000 82002 002 uva 200 5000 40 82003 004 arance 30 500

Verso la seconda forma normale TABELLA DETTAGLI ORDINI N. ordine Codice Prod. Descr. Q.tà Prod. Prezzo Prod. 82001 001 mele 100 1000 82002 002 uva 200 5000 40 82003 004 arance 30 500 chiave multicampo il prodotto esiste solo se c’è un ordine per esso e se cambia il prezzo delle mele? e se venisse eliminato l’ordine 82003 ?

2. Almeno un campo non dipende dall'intera chiave Verso la seconda forma normale TABELLA DETTAGLI ORDINI N. ordine Codice Prod. Descr. Q.tà Prod. Prezzo Prod. 82001 001 mele 100 1000 82002 002 uva 200 5000 40 82003 004 arance 30 500 1. Chiave multi campo 2. Almeno un campo non dipende dall'intera chiave

Seconda forma normale Una tabella si dice in seconda forma normale quando: rispetta già la prima forma normale tutti gli attributi non appartenenti alla chiave dipendono dall’intera chiave

Seconda forma normale Codice Prod. Descr. Prezzo Prod. 001 002 004 ordine Data Codic Cliente Nome Città 82001 2/1/96 1001 Rossi CR 82002 3/1/96 2239 Neri MI 82003 8/1/96 0112 Gialli N. ordine Codice Prod. Q.tà Prod. 82001 001 100 82002 002 200 40 82003 004 30 Codice Prod. Descr. Prezzo Prod. 001 002 004 mele uva arance 1000 5000 500

Verso la terza forma normale ordine Data Codic Cliente Nome Città 82001 2/1/96 1001 Rossi CR 82002 3/1/96 2239 Neri MI 82003 8/1/96 0112 Gialli cosa succede se un cliente non ha ancora fatto acquisti? e se il cliente si trasferisse in un’altra città ? e se l’unico ordine di un cliente venisse cancellato?

NomeCliente non dipende dalla chiave Verso la terza forma normale N. ordine Data Codic Cliente Nome Città 82001 2/1/96 1001 Rossi CR 82002 3/1/96 2239 Neri MI 82003 8/1/96 0112 Gialli NomeCliente non dipende dalla chiave

Terza forma normale Una tabella si dice in terza forma normale quando: rispetta già la seconda forma normale (e quindi anche la prima) tutti gli attributi non appartenenti alla chiave dipendono solo dalla chiave

Terza forma normale Codice Cliente Nome Cliente Città Cliente 1001 Rossi CR 2239 Neri MI 0112 Gialli Codice Prod. Descr. Prezzo Prod. 001 002 004 mele uva arance 1000 5000 500 N. ordine Codice cliente Prod. Q.tà 82001 1001 001 100 82002 2239 002 200 40 82003 0112 004 30 Codice Prod. Descr. Prezzo Prod. 001 002 004 mele uva arance 1000 5000 500

2a forma violata, perchè? la 3a no, perchè? Quali forme normali non sono rispettate? CHIAVE CHIAVE 2a forma violata, perchè? la 3a no, perchè?

Quali forme normali non sono rispettate?

Quali forme normali non sono rispettate?

Quali forme normali non sono rispettate?

La relazione che segue non è in prima forma normale, perché?? Fonte: www.studiamo.it

Ora rispetta la prima (opinabile il discorso cap…) ma ne viola altre; quali?? Fonte: www.studiamo.it

CHIAVE Fonte: www.studiamo.it

Fonte: http://www-db.deis.unibo.it/courses/SIL-B/

Fonte: http://www-db.deis.unibo.it/courses/SIL-B/

La normalizzazine non è un obbligo. Fonte: http://www-db.deis.unibo.it/courses/SIL-B/