Informatica (Basi di Dati)



Documenti analoghi
Associazioni. Informatica. Associazioni. Associazioni. Associazioni. Attributi. Possono esistere associazioni diverse che coinvolgono le stesse entità

PROGETTAZIONE CONCETTUALE

Database. Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014

Basi di dati. Le funzionalità del sistema non vanno però ignorate

Gli attributi di STUDENTE saranno: Matricola (chiave primaria), Cognome, Nome.

Basi di dati. (Sistemi Informativi) teoria e pratica con Microsoft Access. Basi di dati. Basi di dati. Basi di dati e DBMS DBMS DBMS

Corso di Sistemi di Elaborazione delle Informazioni I Anno 2005/2006. Esercizi entità relazione risolti. a cura di Angela Campagnaro

Identificatori delle entità

MODELLO E/R. Modellazione dei dati

Cardinalità e identificatori. Informatica. Generalizzazioni. Generalizzazioni. Generalizzazioni. Generalizzazioni

Progettazione base dati relazionale

MODELLO E/R. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Informatica (Basi di Dati)

Basi di Dati. Progettazione del Modello ER. K. Donno - Progettazione del Modello ER

Alessandra Raffaetà. Basi di Dati

Progettazione del Software, Laurea in Ingegneria Gestionale Progettazione del Software Laurea in Ing. Gestionale

Progettazione di Database. Un Esempio

Progettazione di Basi di Dati

PROGETTAZIONE CONCETTUALE

database: modello entityrelationship

Introduzione alla progettazione. Metodologie e modelli per la progettazione di basi di dati. Il ciclo di vita dei sistemi informativi

Vincoli di integrità

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Modello dei Dati ENTITÀ-RELAZIONE (ENTITY-RELATIONSHIP) é l insieme di concetti, simboli, regole che useremo per rappresentare il modello concettuale

Progettazione di un DB....in breve

Progettazione Logica. Progettazione Logica

CAPITOLO 7 ESERCIZI SUL MODELLO ER

Dalla progettazione concettuale alla modellazione di dominio

MODELLO RELAZIONALE. Introduzione

Database 1 biblioteca universitaria. Testo del quesito

Esercitazione di Basi di Dati

Corso di Informatica (Basi di Dati)

Corso di Informatica (Basi di Dati)

Basi di dati 9 febbraio 2010 Compito A

Basi di dati. Esercitazione ER. Paolo Papotti. Esercizio giugno 2005

Gestione Voti Scolastici

BASE DI DATI: sicurezza. Informatica febbraio ASA

Elena Baralis 2013 Politecnico di Torino 1

Modulo 2 Data Base 2

PROGETTAZIONE DI UN DATABASE

Basi di dati. Il Modello Relazionale dei Dati. K. Donno - Il Modello Relazionale dei Dati

Basi di Dati e Sistemi Informativi. Progettazione logica: Il modello relazionale

Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro

Il modello Entity-Relationship: elementi di base

DIPARTIMENTO IMPIEGATO PROGETTO SEDE. (0,1) (1,1) DIREZIONE Cognome. Codice. Telefono (0,1) (1,N) AFFERENZA. Stipendio (0,N) Nome (1,1) Età

Progettazione logica relazionale (1/2)

Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1

Organizzazione degli archivi

Unità C1 Modello logico

Esercitazione di Basi di Dati

Basi di dati Progettazione logica. Elena Baralis Politecnico di Torino

LE BASI DI DATI. Seconda parte La progettazione di database Relazionali SCHEMA CONCETTUALE LE ASSOCIAZIONI

Università degli Studi di L Aquila. Facoltà di Ingegneria. Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi

Modello Relazionale. Modello Relazionale. Relazioni - Prodotto Cartesiano. Relazione: tre accezioni. Es. Dati gli insiemi

ALGEBRA DELLE PROPOSIZIONI

Progettazione di basi di dati. Progettazione di basi di dati. Ciclo di vita dei sistemi informativi. Fasi del ciclo di vita [1]

I database. Cosa sono e a cosa servono i Database

Rappresentazione grafica di entità e attributi

I database relazionali sono il tipo di database attualmente piu diffuso. I motivi di questo successo sono fondamentalmente due:

Modello Relazionale dei DBMS - Vincoli Tradizionalmente, esistono quattro modelli logici: Gerarchico Reticolare Relazionale A oggetti XML I modelli

Esercizio data base "Biblioteca"

Esercizio. Atzeni e altri, Basi di dati, Capitolo 8 64

Basi di Dati corso C Esercitazione 18/12/2002 Autonoleggio tempo: 3 ore

Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 25 Marzo 03 Nome: Cognome: Matricola: Esercizio 1

Basi di dati. Esercizi sul modello E.R.

La Progettazione Concettuale

Concetti preliminari teorici per il corso di Access Avanzato - Sc.Elem Falcone - PON Prof. M. Simone

LE ASSOCIAZIONI (parte 1) le associazioni parte 1 1

DB - Modello relazionale dei dati. DB - Modello Relazionale 1

Segreteria da campo. Database Relazionali

Data Base. Ing. Maria Grazia Celentano

Il modello Entity-Relationship: pattern di progettazione

Corso sul linguaggio SQL

Progettaz. e sviluppo Data Base

La progettazione concettuale: il modello ER. 17/12/2007 Unità di Apprendimento A2 1

DFD DISPENSA DEL CORSO DI SISTEMI INFORMATIVI UNIVERSITÀ DEGLI STUDI DI VERONA FACOLTÀ DI MM.FF.NN LAUREA SPECIALISTICA IN INFORMATICA

Le Basi di Dati. Le Basi di Dati

Progettare una base di dati che permetta di gestire il problema descritto nel seguito, nei seguenti punti:

Analisi e progettazione del software AbcBid studio di caso 6 dicembre 2007 REQUISITI ITERAZIONE 1

Database. Si ringrazia Marco Bertini per le slides

SISTEMI INFORMATIVI AVANZATI -2010/ Introduzione

Schemi Entita`-Associazione: linguaggio

Basi di dati. Concetti Introduttivi ESEMPIO. Fisica, Analisi, Informatica. Entità Relazioni Interrogazioni. Database 2

Corso di Basi di Dati A.A. 2014/2015

Capitolo 8. Esercizio 8.1

Progetto Motorizzazione. Si vuole realizzare un'applicazione base di dati per la gestione di un ipotetico ufficio della motorizzazione.

BASI DATI BIOINGEGNERIA ED INFORMATICA MEDICA. Lezione II - BioIngInfMed

Lo schema concettuale risultante dalla progettazione concettuale è l input alla fase di progettazione logica.

Basi di dati. Maurizio Lenzerini. Dipartimento di Informatica e Sistemistica Antonio Ruberti Università di Roma La Sapienza. Anno Accademico 2011/2012

Basi di dati I Soluzione Quinto Homework del 9 gennaio 2013

Unità B2.2. Diagrammi E-R

Allegato n. 13 Linee guida per la formazione e gestione dei fascicoli

Esercizi. Facoltà di Scienze Matematiche, Fisiche e Naturali. Riferimenti. Laurea in Bioinformatica Basi di Dati Anno Accademico 2008/2009

Informatica Industriale Modello funzionale: Informazione Progettazione concettuale

Basi di dati. Concetti introduttivi ESEMPIO. INSEGNAMENTI Fisica, Analisi, Aule. Docenti. Entità Relazioni Interrogazioni. Ultima modifica: 26/02/2007

Claudia Raibulet

Il database management system Access

Modellazione dei dati in UML

Capitolo 2. Esercizio 2.1. Esercizio 2.2

Transcript:

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 2007-2008 1

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. 2

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 3

L entità 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 l applicazione Ad esempio si può scegliere di descrivere: un azienda tramite le seguenti entità: Impiegato, Dipartimento, Città, etc. un università tramite le seguenti entità: Studente, Corso, Docente, etc. 4

L entità Un istanza di entità (od occorrenza di entità) è un oggetto appartenente alla classe che l entità rappresenta Ad esempio un istanza dell entità Impiegato è l impiegato Mario Rossi, un istanza dell entità Studente è lo studente Luca Bianchi e una dell entità Corso è il corso di Informatica per il corso di Laurea in Biotecnologie 5

L entità La rappresentazione grafica di un entità, in uno schema di descrizione della realtà di interesse, è un rettangolo con al centro il nome che la identifica univocamente l entità. Ad esempio: Impiegato Città Studente Corso 6

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 Amministrativo Professore Associato Professore Ordinario Tecnico 7

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

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

Un esempio Le due entità Studente Laurea Breve e Studente Laurea Specialistica, dell esempio 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 10

L esempio precedente... E se si volessero rappresentare tutti gli studenti tramite l unica 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 11

Il costrutto di Relazione Il costrutto di relazione permette di evidenziare un associazione (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. 12

Il costrutto di Relazione Un occorrenza 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 un azienda 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 è un occorrenza dell entità Fornitore, Stampante è un occorrenza 13

Il costrutto di Relazione dell entità Prodotto, e Ricerca è un occorrenza dell entità 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 un università. 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 dell entità Studente e Informatica è un occorrenza dell entità Corso. In altre parole lo Studente Luca Bianchi ha sostenuto l esame di Informatica. 14

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: Studente Esame Corso 15

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

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

La cardinalità delle relazioni Data un entità 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 un istanza di E può partecipare (è un vincolo!). Graficamente si ha: (m,m) E R... 18

La cardinalità delle relazioni Ad esempio, nel seguente schema E-R di una certa azienda, l entità Impiegato è legata all entità Progetto tramite la relazione Assegnazione. Questo schema modellizza il fatto che in un azienda ogni impiegato è coinvolto in qualche progetto. Un istanza della relazione Assegnazione è una coppia (I, P), dove I è un istanza dell entità Impiegato e P un istanza dell entità Progetto. Impiegato (1,5) (0,50) Assegnazione Progetto 19

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

La cardinalità delle relazioni Allo stesso modo possiamo dire che un istanza dell entità Progetto può partecipare da un minimo di 0 volte ad un massimo di 50 volte ad un istanza 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. 21

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

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

La cardinalità delle relazioni Nello schema Impiegato (1,1) (0,N) Assegnazione Progetto l entità 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. L entità Impiegato può partecipare invece ad una sola istanza della relazione Assegnazione e quindi un impiegato dell azienda deve essere coinvolto in un solo progetto. 24

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

Qualche esempio Il seguente schema E-R Persona (0,N) Residenza (0,N) Città 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. 26

Qualche esempio Il seguente schema E-R Persona (0,1) (0,N) Residenza Città 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. 27

Qualche esempio Il seguente schema E-R Persona (1,1) (0,N) Residenza Città 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. 28

Classificazione delle relazioni binarie Una relazione R tra due entità E 1 ed E 2,cioè binaria (m E 1,M 1 ) (m 1 R 2,M 2 ) E 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 29

Classificazione delle relazioni binarie Esempi di relazioni binarie uno a uno Impiegato (0,1) (1,1) Direzione Progetto Professore (1,1) (1,1) Docenza Corso 30

Classificazione delle relazioni binarie Esempi di relazioni binarie uno a molti Studente (1,1) (0,N) Nascita Città Comune (1,1) (1,N) Ubicazione Provincia 31

Classificazione delle relazioni binarie Esempi di relazioni binarie molti a molti Studente (0,N) Esame (0,N) Corso Montagna (0,N) Scalata (1,N) Alpinista 32

Gli identificatori di entità Un identificatore di entità permette di specificare un insieme di proprietà che identificano univocamente le istanze dell entità, in maniera tale che non possano esistere due istanze dell entità che assumono lo stesso valore per l insieme di proprietà che compongono l identificatore. 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. 33

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

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

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

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

Gli identificatori di entità La rapresentazione grafica di un identificatore composto da un solo attributo è l annerimento del corrispondente pallino CodiceFiscale Cognome Nome Persona Residenza 38

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 Cognome Nome Data di nascita Persona Residenza 39