Rileaborato da M. Lenzerini - Basi di dati

Slides:



Advertisements
Presentazioni simili
La progettazione concettuale
Advertisements

Corso di Informatica (Basi di 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.
Basi di dati - Fondamenti
Il modello logico Il modello logico.
La progettazione concettuale
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
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
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning
Rielaborato da Atzeni et al., Basi di Dati, Mc-Graw Hill
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 Basi di dati: progettazione concettuale.
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
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
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
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
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
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
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Universita’ di Milano Bicocca Corso di Basi di Dati 1 in eLearning C
Rielaborato da Atzeni et al., Basi di Dati, Mc-Graw Hill
Esercitazione Modello ER 1
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
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
Progettazione di una base di dati relazionale
Universita’ di Milano Bicocca Corso di Basi di Dati 1 in eLearning C
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
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
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
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Progettazione di una base di dati relazionale
I vincoli di integrità Alcuni aspetti della realtà NON possono essere modellati solamente con entità, attributi e relazioni, per esempio i vincoli di integrità.
Rielaborato da Atzeni et al., Basi di Dati, Mc-Graw Hill
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Progettazione logica: Il modello relazionale
Gli schemi concettuali
Basi di dati - Fondamenti
Progettazione concettuale
Partizionamento/accorpamento di concetti
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
Le basi di dati: progettazione concettuale.
Esercitazioni corso di RETI
OGGETTO E TIPO DI OGGETTO
Modello Relazionale Proposto agli inizi degli anni ‘70 da Codd
Dipendenze funzionali
ER Primo esonero Basi DATI 2015
Strategie di progetto Si possono utilizzare le strategie tipiche dello sviluppo di un processo di ingegnerizzazione (es. ingegneria del software). Strategie.
Il questionario: progettazione e redazione II Modulo
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:

Rileaborato da M. Lenzerini - Basi di dati Universita’ di Milano Bicocca Corso di Basi di Dati 1 in eLearning C. Batini 2. Il modello Entita’ Relazione 2.6 Relazioni n-arie e Identificatori Rileaborato da M. Lenzerini - Basi di dati

Rileaborato da M. Lenzerini - Basi di dati Attenzione! Le cardinalita’ minime (e massime) nei class diagram di UML hanno significati “opposti” alle cardinalita’ minime (e massime) nel modello ER, nel senso che sono riferite alla seconda entita’ coinvolta nella relazione binaria, e non alla prima. Assegnazione Impiegato Progetto (1,1) (0,n) Entita’ Relazione (1,1) (0,n) Impiegato Progetto Assegnazione Class Diagram Rileaborato da M. Lenzerini - Basi di dati

Rileaborato da M. Lenzerini - Basi di dati Attributi composti Un attributo può anche essere definito su un dominio complesso. Di particolare interesse è il caso di dominio di tipo “record”, cioe’ composto di domini (anche detti coampi) elementari. Un attributo il cui dominio è di tipo record si dice composto. Notazione: Via Impiegato Indirizzo Numero CAP “Indirizzo” è un attributo composto, e il suo dominio è un tipo record con campi “Via”, “Numero” e “CAP”. Rileaborato da M. Lenzerini - Basi di dati

Rileaborato da M. Lenzerini - Basi di dati Relazioni n-arie Rileaborato da M. Lenzerini - Basi di dati

Relazioni n-arie (grado maggiore di 2) Una relazione di grado maggiore di 2 si dice n-aria Rappresenta fatti costituiti da fornitori, prodotto forniti e dipartimenti per cui li forniscono Fornitura Fornitore Prodotto Dipartimento Una istanza e’ ad esempio <De Santis, matite, dipartimento Disco> Rileaborato da M. Lenzerini - Basi di dati

Relazioni n-arie con attributi Esempio di relazione n-aria con attributo Rappresenta le quantita’ fornite dai fornitori dei prodotti forniti ai singoli dipartimenti Quantità Fornitura Fornitore Prodotto Dipartimento Una istanza e’ ad esempio <De Santis, matite, dipartimento Disco, 100> Rileaborato da M. Lenzerini - Basi di dati

Relazioni definite sulla stessa Entita’ esempio Le etichette, dette ruoli, servono a identificare i diversi significati delle due istanze di entita’ Successore Succede a Precedessore Sovrano Rileaborato da M. Lenzerini - Basi di dati

Cardinalita’ nelle Relazioni n-arie Valgono le stesse definizioni fornite per le relazioni binarie. Ogni fornitore fornisce almeno un prodotto ad almeno un dipartimento. Vi sono prodotti (nuovi) che non sono ancora stati forniti a nessun dipartimento Quantità (1,n) (0,n) Fornitura Fornitore Prodotto Dipartimento (1,n) I dipartimenti acquistano diversi prodotti da diversi fornitori Rileaborato da M. Lenzerini - Basi di dati

Rileaborato da M. Lenzerini - Basi di dati Domanda 2.6.1 Come modifichi lo schema se devi aggiungere le seguenti proprieta’: l’indirizzo del fornitore, una descrizione dei prodotti, il direttore del Dipartimento, costo totale delle forniture fornite? Quantità Costo totale (1,n) (0,n) Fornitura Fornitore Prodotto Dipartimento Indirizzo (1,n) Descrizione Direttore Rileaborato da M. Lenzerini - Basi di dati

Rileaborato da M. Lenzerini - Basi di dati Domanda 2.6.2 e soluzione Come modifichi lo schema se devi aggiungere quanto ogni dipartimento ha speso con ogni fornitore? Quantità Costo totale (1,n) (0,n) Fornitura Fornitore Prodotto Dipartimento Indirizzo (1,n) Descrizione Spesa Totale Direttore Rileaborato da M. Lenzerini - Basi di dati

Rileaborato da M. Lenzerini - Basi di dati Identificatori Rileaborato da M. Lenzerini - Basi di dati

Identificatori di entità Un identificatore di una entità è un insieme di proprietà (attributi o relazioni) che permettono di identificare univocamente le istanze di un’entità. In altre parole, non possono esistere due istanze di una data entità che assumono lo stesso valore per tutte le proprietà che formano l’identificatore. (Esempio: Codice fiscale per Persona) Su ogni entità si può definire un numero qualunque di identificatori (ma almeno uno) Es. in una Universita’, Matricola identifica univocamente uno Studente. Rileaborato da M. Lenzerini - Basi di dati

Tipi di identificatori - 1 Un identificatore di una entità E può essere Interno, ossia formato solo da attributi di E Notazione grafica per gli identificatori interni: Se l’identificatore è formato da un solo attributo, si annerisce il corrispondente pallino. Se l’identificatore è formato da più attributi, si uniscono gli attributi con una linea che termina con pallino annerito. Rileaborato da M. Lenzerini - Basi di dati

Esempi di identificatori interni La targa identifica ogni automobile Targa Automobile Modello Colore Data Nascita Persona Cognome Le persone sono Identificate da Data Nascita, Cognome e Nome Nome Rileaborato da M. Lenzerini - Basi di dati

Rileaborato da M. Lenzerini - Basi di dati Domanda 2.6.3 Per le due entita’ qui sotto, che rappresentano persone e imprese in Italia, definire gli identificatori interni. Se si hanno dei dubbi consultare testi su internet che permettano di determinare le risposte. Risposte Codice fiscale Nome Cognome Persona Codice fiscale Persona Nome Cognome Partita IVA Partita IVA Nome Sede Sociale Impresa Impresa Nome Sede Sociale Rileaborato da M. Lenzerini - Basi di dati

Tipi di identificatori - 2 Un identificatore di una entità E può essere Esterno, ossia formato da attributi di E e da relazioni che coinvolgono E, oppure solo da relazioni che coinvolgono E In questo caso, per identificare ogni istanza della entita’ e’ necessario specificare le istanze degli attributi e la istanza (le istanze) delle relazioni. Ad esempio, la matricola di uno studente e’ univoca all’interno di una Universita’. Ma se vogliamo rappresentare tutti gli studenti delle Universita’ italiane, per identificare uno studente devo dare Matricola e Universita’. Rileaborato da M. Lenzerini - Basi di dati

Tipi di identificatori - 2 Notazione per gli identificatori esterni: Si indica unendo gli attributi e le relazioni con una linea che termina con pallino annerito. Iscrizione Cognome Matricola Nome (1,1) (0,n) Studente Università Lo schema rappresenta tutti gli studenti di tutte le universita’, quindi Matricola da sola non e’ identificatore Rileaborato da M. Lenzerini - Basi di dati

Rileaborato da M. Lenzerini - Basi di dati Domanda 2.6.4 Considera lo schema qui sotto. Definisci l’identificatore della entita’ Appartamento Locato Proprietario Interno Indirizzo (1,1) (0,n) Appartamento Stabile Comune Risposta Locato Proprietario Interno Indirizzo (1,1) (0,n) Appartamento Stabile Comune Rileaborato da M. Lenzerini - Basi di dati

Rileaborato da M. Lenzerini - Basi di dati Concetti introdotti Attributo composto Relazione n-aria Relazione definita sulla stessa entita’ Identificatore Identificatore interno Identificatore esterno Rileaborato da M. Lenzerini - Basi di dati