La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

1 Corso di Laurea in Biotecnologie Informatica (Basi di Dati) Modello Entità-Relazione Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi, Torlone.

Presentazioni simili


Presentazione sul tema: "1 Corso di Laurea in Biotecnologie Informatica (Basi di Dati) Modello Entità-Relazione Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi, Torlone."— Transcript della presentazione:

1 1 Corso di Laurea in Biotecnologie Informatica (Basi di Dati) Modello Entità-Relazione Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof. Carlo Batini, Laurea in Informatica, AA

2 2 Il modello Entità-Relazione Il modello Entità-Relazione (modello E- R) è un modello concettuale che fornisce i costrutti per descrivere la realtà di interesse in maniera indipendente da come poi i relativi dati saranno organizzati logicamente e fisicamente nella Base di Dati, cioè indipendentemente dal modello logico e dal modello fisico.

3 3 I costrutti del modello E-R I costrutti del modello E-R (che vedremo) sono: Entità Attributo di Entità Relazione Attributo di Relazione Cardinalità di Relazione Identificatori

4 4 Lentità Il costrutto di entità permette di rappresentare una classe di oggetti (cioè fatti, persone, cose, etc.) che appartengono ad una realtà e che: hanno proprietà comuni hanno esistenza autonoma sono di interesse per lapplicazione Ad esempio si può scegliere di descrivere: unazienda tramite le seguenti entità: Impiegato, Dipartimento, Città, etc. ununiversità tramite le seguenti entità: Studente, Corso, Docente, etc.

5 5 Lentità Unistanza di entità (od occorrenza di entità) è un oggetto appartenente alla classe che lentità rappresenta Ad esempio unistanza dellentità Impiegato è limpiegato Mario Rossi, unistanza dellentità Studente è lo studente Luca Bianchi e una dellentità Corso è il corso di Informatica per il corso di Laurea in Biotecnologie

6 6 Lentità La rappresentazione grafica di unentità, in uno schema di descrizione della realtà di interesse, è un rettangolo con al centro il nome che la identifica univocamente lentità. Ad esempio: ImpiegatoCittà StudenteCorso

7 7 Un esempio Vogliamo schematizzare tramite il modello E-R le seguenti entità coinvolte in una realtà universitaria: gli studenti della laurea breve e quelli della specialistica i professori (associati e ordinari) il personale tecnico e amministrativo Studente Laurea Breve Studente Laurea Specialistica Professore Associato Professore Ordinario Tecnico Amministrativo

8 8 Lattributo di Entità Lattributo di entità permette di descrivere una proprietà elementare di unentità, il cui valore varia da istanza a istanza dellentità. Linsieme dei valori ammissibili per un dato attributo prende il nome di dominio dellattributo. Ad esempio, lentità Impiegato può avere i seguenti attributi: Cognome, Nome, Stipendio, Età. Lentità Studente può avere i seguenti attributi: Matricola, Cognome, Nome, Data di nascita, Comune di Residenza. Il dominio dellattributo Cognome delle entità Impiegato e Studente può essere linsieme delle stringhe di 20 caratteri a-z e A-Z. Il dominio dellattributo Età di Impiegato può essere linsieme dei numeri interi compresi tra 18 e 65. Un particolare studente (unistanza dellentità Studente) può avere i seguenti valori dei suoi attributi: 1111, Rossi, Luca, 13/06/1990, Milano.

9 9 Lattributo di Entità La rappresentazione grafica di un attributo di entità, in uno schema di descrizione della realtà di interesse, è un cerchio collegato allentità e identificato univocamente tramite un nome. Ad esempio: Impiegato CognomeNomeEtàStipendio

10 10 Un esempio Le due entità Studente Laurea Breve e Studente Laurea Specialistica, dellesempio Precedente, possiedono gli attributi Matricola, Cognome, Nome, Data di nascita, Comune di Residenza. Studente Laurea Breve Matricola Cognome Nome Data di nascita Comune di Residenza Studente Laurea Specialistica Matricola Cognome Nome Data di nascita Comune di Residenza

11 11 Lesempio precedente... E se si volessero rappresentare tutti gli studenti tramite lunica entità Studente, mantenendo però la distinzione tra i due tipi di laurea? Basta aggiungere un nuovo attributo che specifica il tipo di laurea Studente Matricola Cognome Nome Data di nascita Comune di Residenza Tipo di laurea

12 12 Il costrutto di Relazione Il costrutto di relazione permette di evidenziare unassociazione (o legame) tra n entità E 1, E 2,…, E n. Se n=2, la relazione è binaria. Ad esempio, tra le due entità Studente e Corso Si può evidenziare una relazione di esame. La residenza è una relazione tra Impiegato e Città, e la sede di lavoro è una seconda relazione tra Impiegato e Città. Il grado di una relazione è definito come il numero di entità coinvolte.

13 13 Il costrutto di Relazione Unoccorrenza di relazione (o istanza di relazione) è una n-pla (coppia se n=2) costituita da n occorrenze di entità, una per ciascuna delle entità coinvolte. Ad esempio, si consideri un modello E-R di unazienda composto dalle tre entità E 1 =Fornitore, E 2 =Prodotto, E 3 =Dipartimento. Tra di esse esiste la relazione Fornitura. Una possibile occorrenza della relazione Fornitura è la tripletta (Rossi, Stampante, Ricerca), dove Rossi è unoccorrenza dellentità Fornitore, Stampante è unoccorrenza

14 14 Il costrutto di Relazione dellentità Prodotto, e Ricerca è unoccorrenza dellentità Dipartimento. In altre parole,il fornitore Rossi ha venduto una stampante al Dipartimento di Ricerca. Un secondo esempio: si consideri il modello E-R di ununiversità. Tra le entità Studente e Corso sussiste la relazione Esame. Quindi una possibile occorrenza della relazione Esame è data dalla coppia (Luca Bianchi, Informatica) dove Luca Bianchi è una occorrenza dellentità Studente e Informatica è unoccorrenza dellentità Corso. In altre parole lo Studente Luca Bianchi ha sostenuto lesame di Informatica.

15 15 Il costrutto di Relazione La rappresentazione grafica di una relazione, in uno schema di descrizione della realtà di interesse, è un rombo contenente il nome che identifica univocamente la relazione, e collegato alle entità coinvolte. Ad esempio: StudenteCorso Esame

16 16 Lattributo di Relazione Lattributo di relazione permette di descrivere una proprietà elementare di una relazione, il cui valore varia da istanza a istanza. Linsieme dei valori ammissibili per un attributo prende il nome di dominio dellattributo. Ad esempio la relazione Esame può avere come possibili attributi Data e Voto. Il dominio dellattributo Voto può essere linsieme degli interi tra 18 e 30. Attenzione! Lattributo di una relazione NON è una proprietà delle entità coinvolte, ma è una proprietà del loro legame

17 17 Un esempio Le due entità Studente e Corso sono legate dalla relazione Esame che ha Data e Voto come attributi. StudenteCorso Esame DataVoto Ad esempio listanza (Luca Bianchi, Informatica) di Esame, ha 30 come valore dellattributo Voto e 25/02/2008 come valore dellattributo Data.

18 18 La cardinalità delle relazioni Data unentità E coinvolta in una relazione R (di grado n qualsiasi), la cardinalità permette di esprimere il numero minimo m (cardinalità minima) e il numero massimo M (cardinalità massima) di istanze di R a cui unistanza di E può partecipare (è un vincolo!). Graficamente si ha: E R... (m,M)

19 19 La cardinalità delle relazioni Ad esempio, nel seguente schema E-R di una certa azienda, lentità Impiegato è legata allentità Progetto tramite la relazione Assegnazione. Questo schema modellizza il fatto che in unazienda ogni impiegato è coinvolto in qualche progetto. Unistanza della relazione Assegnazione è una coppia (I, P), dove I è unistanza dellentità Impiegato e P unistanza dellentità Progetto. Assegnazione ImpiegatoProgetto (1,5)(0,50)

20 20 La cardinalità delle relazioni In altre parole, allimpiegato I è stato assegnato il progetto P. Il fatto che il vincolo di cardinalità per lentità Impiegato coinvolto nella relazione Assegnazione sia (1,5), significa che unistanza di Impiegato può partecipare da un minimo di 1 volta ad un massimo di 5 volte ad unistanza di Assegnazione. Con tale schema si vuole cioè modellizzare il fatto che, nellazienda in questione, ad un certo impiegato deve obbligatoriamente essere assegnato almeno un progetto ma non gli possono essere assegnati più di 5 progetti.

21 21 La cardinalità delle relazioni Allo stesso modo possiamo dire che unistanza dellentità Progetto può partecipare da un minimo di 0 volte ad un massimo di 50 volte ad unistanza di Assegnazione. Quindi un progetto può anche non essere assegnato a nessun impiegato (ad esempio un progetto lanciato da poco tempo) e non può essere assegnato a più di 50 impiegati.

22 22 La cardinalità delle relazioni Valori interessanti di cardinalità minima m: 0, significa che la partecipazione è opzionale 1, significa che la partecipazione è obbligatoria Nello schema Assegnazione ImpiegatoProgetto (1,5)(0,50) la partecipazione dellentità Impiegato alla relazione Assegnazione è perciò obbligatoria, cioè un impiegato deve obbligatoriamente essere coinvolto in un progetto. La partecipazione dellentità Progetto alla relazione Assegnazione è invece opzionale, cioè un progetto può anche non essere assegnato a nessun impiegato.

23 23 La cardinalità delle relazioni Valori interessanti di cardinalità massima M: 1, significa che le occorrenze dellentità partecipano al più 1 volta alle occorrenze della relazione N, significa che le occorrenze dellentità partecipano un qualsivoglia numero di volte alle occorrenze della relazione

24 24 La cardinalità delle relazioni Nello schema Assegnazione ImpiegatoProgetto (1,1)(0,N) lentità Progetto può partecipare ad un numero qualsiasi di istanze di Assegnazione (non più limitato a 50 come nello schema precedente), cioè un progetto può essere assegnato ad un qualsivoglia numero di impiegati. Lentità Impiegato può partecipare invece ad una sola istanza della relazione Assegnazione e quindi un impiegato dellazienda deve essere coinvolto in un solo progetto.

25 25 La cardinalità delle relazioni NOTA BENE: la coppia (0, N) per la cardinalità minima e massima di unentità in una relazione è equivalente allassenza di vincolo di cardinalità.

26 26 Qualche esempio Il seguente schema E-R Residenza PersonaCittà (0,N) potrebbe rappresentare uno schema concettuale compatibile con la realtà amministrativa italiana? NO, perché non è ammesso che una persona in Italia abbia più città di residenza.

27 27 Qualche esempio Il seguente schema E-R Residenza PersonaCittà (0,1)(0,N) potrebbe rappresentare uno schema concettuale compatibile con la realtà amministrativa italiana? SI, se ammettiamo che non è necessario che la residenza di un impiegato sia nota.

28 28 Qualche esempio Il seguente schema E-R Residenza PersonaCittà (1,1)(0,N) potrebbe rappresentare uno schema concettuale compatibile con la realtà amministrativa italiana? SI, perché in Italia la residenza deve essere nota e unica. Quindi questo schema modellizza meglio del Precedente la realtà amministrativa italiana.

29 29 Classificazione delle relazioni binarie Una relazione R tra due entità E 1 ed E 2,cioè binaria R E1E1 E2E2 (m 1,M 1 )(m 2,M 2 ) viene classificata, sulla base dei valori delle cardinalità massime M 1 e M 2, in: relazione uno a uno se M 1 = M 2 =1 relazione uno a molti se M 1 =1 e M 2 =N relazione molti a molti se M 1 =N e M 2 =N

30 30 Classificazione delle relazioni binarie Esempi di relazioni binarie uno a uno Direzione ImpiegatoProgetto (0,1)(1,1) Docenza ProfessoreCorso (1,1)

31 31 Classificazione delle relazioni binarie Esempi di relazioni binarie uno a molti Nascita StudenteCittà (1,1)(0,N) Ubicazione ComuneProvincia (1,1)(1,N)

32 32 Classificazione delle relazioni binarie Esempi di relazioni binarie molti a molti Esame StudenteCorso (0,N) Scalata MontagnaAlpinista (0,N)(1,N)

33 33 Gli identificatori di entità Un identificatore di entità permette di specificare un insieme di proprietà che identificano univocamente le istanze dellentità, in maniera tale che non possano esistere due istanze dellentità che assumono lo stesso valore per linsieme di proprietà che compongono lidentificatore. Nel seguito ci occuperemo solo di identificatori interni, cioè di identificatori composti da attributi di entità. Su ogni entità di uno schema E-R deve essere definito almeno un identificatore.

34 34 Gli identificatori di entità Si consideri il seguente schema in cui lentità Persona ha i seguenti attributi: CodiceFiscale, Cognome, Nome, Residenza. Persona CodiceFiscaleCognomeNome Residenza Lidentificatore per Persona può essere CodiceFiscale (un solo attributo)

35 35 Gli identificatori di entità Si consideri il seguente schema in cui lentità Persona ha i seguenti attributi: Cognome, Nome, DataNascita, Residenza. Lidentificatore per Persona può essere (Cognome,Nome,Data di Nascita) (tre attributi) Persona CognomeNomeDataNascita Residenza

36 36 Gli identificatori di entità Si consideri il seguente schema in cui lentità Automobile ha i seguenti attributi: Targa, Modello, Colore. Automobile TargaModelloColore Lidentificatore per Automobile può essere Targa (un solo attributo)

37 37 Gli identificatori di entità NOTA BENE: per unentità, linsieme di tutti i suoi attributi costituisce banalmente un identificatore in quanto si suppone che non possano esistere due occorrenze completamente coincidenti.

38 38 Gli identificatori di entità La rapresentazione grafica di un identificatore composto da un solo attributo è lannerimento del corrispondente pallino Persona CodiceFiscaleCognomeNome Residenza

39 39 Gli identificatori di entità La rapresentazione grafica di un identificatore composto da più attributi è una linea che unisce gli attributi e che termina con un pallino annerito Persona CognomeNomeData di nascita Residenza


Scaricare ppt "1 Corso di Laurea in Biotecnologie Informatica (Basi di Dati) Modello Entità-Relazione Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi, Torlone."

Presentazioni simili


Annunci Google