V. Moriggia Modelli di Base Dati. Modelli di Base Dati. a.a. 2001/

Documenti analoghi
U.D. 3 : Il digramma E/R Prof. Di Capua G.

Modellazione dei dati

Il modello concettuale dei dati

Le basi di dati. Lez. 2: Progettazione di un DB. Laboratorio di informatica gestionale

Introduzione alle basi di dati: Il modello concettuale

DATABASE - MODELLO E-R ENTITÀ E RELAZIONI TRATTO DA CAMAGNI-NIKOLASSY, CORSO DI INFORMATICA, VOL 2, HOEPLI. Informatica

Modelli di Base Dati

Prima di iniziare. Diamo qualche definizione :

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

COS E UN SISTEMA INFORMATIVO?

MODELLO E/R. Modellazione dei dati

La progettazione concettuale

Progettazione concettuale di una base di dati

Le Basi di dati: progettazione concettuale

BASI DI DATI. Titolo Prof. Cognome Nome Indirizzo Numero Telefono

LE BASI DI DATI. Seconda parte La progettazione di database Relazionali SCHEMA LOGICO Regole di derivazione

Corso di Basi di Dati

Unità A2. Progettazione concettuale. Obiettivi. Astrazione. Astrazione per aggregazione

Progettazione concettuale A. Ferrari

Il modello concettuale dei dati

PROGETTAZIONE CONCETTUALE

Unità Due. Modello E/R

Sistemi di Elaborazione delle Informazioni. Basi di dati. Tullio Facchinetti 29 ottobre :26

E la sintesi tra la visione degli utenti e la visione dei progettisti dell applicazione

Il modello Entità-Relazioni (entity-relationship)

Basi di dati (Sistemi Informativi)

SISTEMI INFORMATIVI E DATABASE

Entità. Relazioni. Cardinalità delle relazioni. Ogni entità ha un nome che la identifica

Le basi di dati. Definizione 1. Lezione 2. Bisogna garantire. Definizione 2 DBMS. Differenza

3.1. CorsodiElementidiBasididati Il modello Entita Relazione (72) vendita ordine studente. Impiegato. Dipartimento. città. Città.

INTRODUZIONE ALLA PROGETTAZIONE. Patrizio Dazzi a.a

Informatica Industriale Modello funzionale: Informazione Modello Entità-Relazione

Lezione 11. database: modello entityrelationship. Proff.Valle Folgieri. Lez11 Trattamento dati. Database: modello entity-relationship 1

Il modello logico dei dati

Il modello Relazionale.

I database. Introduzione alla teoria delle basi di dati

Il Modello Relazionale e le operazioni

Entità. Modello Entità-Relazione (E-R) Relazioni (associazioni) Attributi

Modello Entità-Relazione (E-R)

Modello Entità-Relazione

Modello Entità-Relazione

I modelli logici dei dati

PIL Percorsi di Inserimento Lavorativo

2 - Metodologie e modelli per la progettazione di BD. Informatica II Basi di Dati (08/09) Parte 1. Introduzione alla progettazione

Progettazione di un DB

Cardinalità degli attributi

Introduzione alla progettazione Metodologie e modelli per la progettazione di basi di dati Modello Entità-Associazione

GESTIONE ASSICURAZIONI AUTO

Corso di Informatica

RELAZIONI E BASI DI DATI

Corso di Laurea in Informatica Basi di Dati a.a

Schema Concettuale. Gli elementi essenziali 05/12/2012. I dati devono essere organizzati seguendo le regole di un modello concettuale ENTITA

Ma: progettazione dei dati. progettazione delle applicazioni. Progettazione di basi di dati

Il modello Entità/Relazioni (ER)

Programmazione con Java

Prof. Pagani corrado SISTEMI INFORMATIVI E DATABASE

Progettazione parte seconda

Progettazione di basi di dati. Progettazione di basi di dati

Il Modello Entità Relazione (ER)

Basi di dati e Relazioni

Modello Entità-Relazione (E-R)

Elena baralis 2007 Politecnico di Torino 1

Ciclo di vita di un sistema informativo

UD U.D. 1 : Introduzione ai

LA PROGETTAZIONE CONCETTUALE

Progetto concettuale delle basi di dati

Lezione 3. Parte II Il modello ERA: Definizioni, Concetti, Esempi

Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni

Basi di dati e Relazioni

Elena Baralis 2007 Politecnico di Torino 1

Traduzione. Scelta degli identificatori principali

MODELLI DEI DATI. Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia

Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia. Università degli Studi di Salerno

Introduzione ai DataBase. Alice Pavarani

Modello relazionale e algebra relazionale

Fondamenti di Informatica

Esercizio 1. Partendo dal modello E/R proposto costruire il modello logico secondo i seguenti passaggi:

Basi di dati. Concetti introduttivi

INTRODUZIONE AI DBMS. Inoltre i fogli elettronici. Mentre sono poco adatti per operazioni di. Prof. Alberto Postiglione

INTRODUZIONE AI DBMS

IL PROGETTO DI UN DATABASE TRATTO DA CAMAGNI-NIKOLASSY, CORSO DI INFORMATICA, VOL 2, HOEPLI. Informatica

Progettazione di Basi di Dati

diagrammi entità-relazioni

Principi di Progettazione del Software a.a

Corso Informatica di Base. Basi di Dati

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

Basi di Dati. Sistemi per Basi di Dati Relazionali: Modello Logico. Concetti Fondamentali. Concetti Fondamentali

Perché preoccuparci?

4/16/07. Le Basi di Dati Relazionali. Concetti Fondamentali. Base di dati, tabella, ennupla, attributo, dominio. Valori nulli

LA PROGETTAZIONE CONCETTUALE. Prima parte

Informatica. Dipartimento di Economia. Ing. Cristiano Gregnanin. 20 ottobre Corso di laurea in Economia

Progettare una base di dati. Progettare una base di dati

Sistemi di Elaborazione delle Informazioni (C.I. 15) Basi di dati Introduzione teorica

Corso di. Basi di Dati I. 3. Vincoli di integrità

U.D. 4 : Il modello logico Prof. Di Capua G.

LE BASI DI DATI. Seconda parte La progettazione di database Relazionali SCHEMA LOGICO e SCHEMA FISICO Costruzione delle tabelle

Transcript:

Modelli di Base Dati 1 I Database a.a. 2001/2002 1.1

I Data base 1.2 Sono collezioni di dati organizzati in modo da poter definire delle relazioni. Da una base dati, attraverso opportuni criteri di selezione, si possono estrarre le informazioni necessarie a un determinato utilizzo. I Data base permettono l'utilizzo da parte di più soggetti di risorse comuni memorizzate in dispositivi diversi. a.a. 2001/2002 1.2

Esempio 1.3 Un tipo di organizzazione è quella tabellare. Un foglio Excel, per esempio, può essere visto come un elenco di righe su cui operare selezionandone alcune in base ai criteri definiti in un filtro. a.a. 2001/2002 1.3

Esempio 1.4 Dati gli archivi: A) Studenti, B) Corsi di laurea, C) Personale docente, D) Contabilità supponiamo che il programma P1 gestisca le carriere studenti, il programma P2 l'attività dei docenti, il programma P3 gli stipendi. Sono necessari i seguenti accessi: P1 richiede e aggiorna dati in A e B P2 richiede dati da B e C ma aggiorna solo C P3 richiede dati da C, D ma aggiorna solo D a.a. 2001/2002 1.4

Le proprietà 1.5 consistenza: i dati contenuti in una base dati devono essere significativi ed essere effettivamente utilizzabili sicurezza: impedire che il data base venga danneggiato da interventi accidentali o non autorizzati integrità: garantire che le operazioni effettuate sul Data Base da utenti autorizzati non provochino una perdita di consistenza ai dati a.a. 2001/2002 1.5

Per esempio 1.6 In azienda alcuni archivi di dati sono: Anagrafica dei dipendenti (CodDip, Cognome, Nome, Indirizzo, Data di nascita, CodRep, Stipendio) Reparti (CodRep, Ubicazione, CodDir) Prodotti (CodProd, Descrizione, Quantità in magazzino, Prezzo,CodRep) a.a. 2001/2002 1.6

Livelli di analisi Realtà Livello Concettuale Livello logico Entità/Associazione Entity/Relationship E/R 1.7 Livello Fisico Database La base di dati diventa un modello del mondo reale. Il contenuto della base di dati rappresenta lo stato della realtà modellata. I cambiamenti nella base di dati rappresentano gli eventi che accadono nella realtà modellata. Per arrivare alla costruzione di una base di dati si passa attraverso tre livelli di analisi. Il livello concettuale rappresenta la realtà dei dati e le relazioni tra essi attraverso uno schema. Il livello logico rappresenta il modo attraverso il quale i dati sono organizzati negli archivi elettronici: descrive quindi la composizione ed il formato dei dati nel loro aspetto di struttura logica di dati. Il livello logico viene derivato dal livello concettuale applicando alcune regole molto semplici. il livello fisico rappresenta l'effettiva installazione degli archivi elettronici: esso indica l'ubicazione dei dati nelle memorie di massa (dischi). Il livello fisico è quindi l'implementazione del livello logico sui supporti per la registrazione fisica dei dati. a.a. 2001/2002 1.7

Modello E/R 1.8 Il modello entità/associazioni (in inglese E/R = Entity/Relationship), introdotto nel 1976 da Peter P. Chen,, è uno strumento per analizzare le caratteristiche di una realtà in modo indipendente dagli eventi che in essa accadono, cioè per costruire un modello dei dati (a livello concettuale) indipendente dalle applicazioni. Gli elementi di un modello E/R sono: le entità (sostantivi), le associazioni (verbi), gli attributi (aggettivi). Solitamente i sostantivi che compaiono nelle frasi del linguaggio naturale corrispondono alle entità, mentre i verbi corrispondono alle associazioni. a.a. 2001/2002 1.8

Modello E/R: entità 1.9 L entità è un oggetto (concreto o astratto) che ha un significato anche quando viene considerato in modo isolato. Esempi di entità sono: le persone, un modello di automobile, i movimenti contabili, gli studenti, le facoltà. Studente Facoltà Ciascuno studente rappresenta un istanza del tipo entità Studente L entità è un oggetto (concreto o astratto) che ha un significato anche quando viene considerato in modo isolato ed è di interesse per la realtà che si vuole modellare. Esempi di entità sono: le persone, un modello di automobile, i movimenti contabili, le prove sostenute da uno studente. Per esempio gli studenti sono classificabili nel tipo entità Studente, i diversi modelli di automobile sono classificabili nel tipo entità Automobile. Ciascuno studente rappresenta un istanza del tipo entità Studente. a.a. 2001/2002 1.9

Modello E/R: associazioni 1.10 L associazione (in inglese relationship) ) è un legame che stabilisce un interazione tra le entità. Attenzione: Non sono da confondere le parole relationship e relazione. Studente iscritto a scelta da Facoltà Per esempio tra l entità Persona e l entità Automobile esiste un associazione che può essere descritta nel linguaggio naturale secondo due versi: una persona possiede una o più automobili e un automobile è posseduta da una persona. Quindi si può dire che tra l entità Persona e l entità Automobile esiste l associazione Possiede; tra l entità Automobile e l entità Persona esiste l associazione Posseduta da. L'associazione fra le entità Studente e Facoltà è espressa dai predicati in figura. a.a. 2001/2002 1.10

Modello E/R: attributi 1.11 Le proprietà delle entità e delle associazioni vengono descritte attraverso gli attributi. Per esempio l'entità Studente: Matricola,Nome, Indirizzo. Studente Matricola NomeIndirizzo Esempi di attributi per l entità Automobile sono: Modello, Produttore, Cilindrata, PrezzoListino, per l'entità Studente sono: Nome, Cognome, Matricola. a.a. 2001/2002 1.11

ttributi Caratteristiche degli attributia 1.12 Il formato di un attributo indica il tipo di valori che assume. Formati base: carattere, numerico, data/ora La dimensione indica la quantità massima di caratteri o cifre inseribili. L'opzionalità (facoltativo) Il valore nullo: Null Il dominio è l insieme dei valori che può assumere l attributo. Le caratteristiche di ogni attributo sono: Il formato di un attributo indica il tipo di valori che assume; i tre formati base sono: carattere, numerico, data/ora. La dimensione indica la quantità massima di caratteri o cifre inseribili. L'opzionalità indica la possibilità di non essere sempre valorizzato: l attributo è obbligatorio se deve avere valore non nullo (per esempio il nome di una persona in un anagrafica), facoltativo se sono accettabili valori nulli (per esempio il titolo di studio di una persona). Il valore nullo, in inglese Null, (da non confondere con la stringa di caratteri blank o con un numero di valore zero) rappresenta un informazione mancante, inapplicabile o sconosciuta. I diversi valori assunti dagli attributi determinano le diverse istanze dell entità. L'insieme dei possibili valori assunti da un attributo si chiama dominio dell'attributo. a.a. 2001/2002 1.12

Chiave o chiave primaria 1.13 L'insieme di uno o più attributi che consentono di distinguere un istanza dall'altra. Esempi di chiavi sono il codice di un prodotto o la matricola di uno studente. Studente Matricola NomeIndirizzo a.a. 2001/2002 1.13

Rappresentazione grafica dello schema E/R Entità: : un rettangolo contenente all'interno il nome dell'entità: 1.14 Studente Attributi: : linea che parte dall'entità e termina con il nome ed un piccolo cerchio: Studente Matricola Nome Indirizzo a.a. 2001/2002 1.14

Rappresentazione grafica dello schema E/R (continua) Associazione: : linea di congiunzione tra due entità. Versi dell associazione: : descrizione accanto alla linea e all entità di partenza del verso: 1.15 Studente iscritto a scelta da Facoltà a.a. 2001/2002 1.15

Rappresentazione grafica dello schema E/R (continua) Esiste un simbolismo diverso per descrivere un'associazione: 1.16 Studente iscritto Facoltà in questo caso è possibile specificare gli attributi che intervengono nell associazione: Persona acquista Automobile DataAcquisto PrezzoAcquisto ATTENZIONE: Gli attributi DataAcquisto e PrezzoAcquisto non sono attributi né dell entità Persona, né dell entità Automobile, ma sono attributi dell associazione tra le due entità. a.a. 2001/2002 1.16

Come leggere un associazione 1.17 1. partenza 4. 3. arrivo 2. verso OGNI nome dell'entità di partenza DEVE / PUÒ ESSERE nome del verso dell associazione UN SOLO / UNO O PIÙ nome dell'entità di arrivo Per esprimere con frasi del linguaggio naturale la struttura del modello si usa la seguente terminologia per entrambi i versi di ciascuna associazione : Ogni <nome dell'entità di partenza> deve essere / può essere <nome del verso dell'associazione> un solo / uno o più <nome dell'entità di arrivo> linea continua che inizia dall entità di partenza del verso: deve essere linea tratteggiata che inizia dall'entità di partenza del verso: può essere linea unica che termina nell'entità di arrivo del verso:un solo linea multipla che termina nell'entità di arrivo del verso:uno o più N.B. Convertire al plurale il nome dell'entità di arrivo nel caso in cui si utilizzino le parole uno o più. Un associazione tra le entità può essere : obbligatoria quando il legame tra le entità deve essere sempre presente, opzionale quando può essere presente. Queste caratteristiche possono naturalmente riguardare anche i versi dell associazione tra le entità. Verso obbligatorio = linea continua Verso opzionale = linea tratteggiata ESEMPIO: Associazione tra l entità Persona e l entità ContoCorrente : verso Titolare di = opzionale (non tutte le persone possiedono un conto corrente) ; a.a. 2001/2002 verso Intestato a = obbligatorio (ogni conto corrente deve essere intestato a qualcuno). 1.17

Esempio 1 1.18 Studente Iscritto a Scelta da Facoltà Ogni Studente deve essere iscritto a una sola Facoltà. Ogni Facoltà può essere scelta da uno o più Studenti. a.a. 2001/2002 1.18

Esempio 2 1.19 Prodotto fornito da abbinato a Fornitore Ogni Prodotto deve essere fornito da uno o più Fornitori Ogni Fornitore può essere abbinato a uno o più Prodotti a.a. 2001/2002 1.19

Grado del verso di un associazione 1.20 Il grado di un verso dell'associazione è la caratteristica che indica quante istanze dell'entità di arrivo si associano all'istanza dell'entità di partenza. Il grado può essere : a uno, a molti. a.a. 2001/2002 1.20

Associazione 1:1 1.21 Associazione 1:1 (uno a uno) o biunivoca pilota alla guida di guidata da monoposto OGNI pilota deve essere alla guida di una sola monoposto. OGNI monoposto deve essere guidata da un solo pilota. a. Associazione 1:1 (uno a uno) o biunivoca Ogni istanza della prima entità si deve associare ad una sola istanza della seconda entità e viceversa. Il simbolismo che indica il grado a uno nell associazione tra le entità è la linea stessa. a.a. 2001/2002 1.21

Associazione 1:n 1.22 Associazione 1:n (uno a molti) o semplice squadra composta da di proprietà di calciatore OGNI squadra deve essere composta da uno o più calciatori. OGNIcalciatore deve essere di proprietà di una sola squadra. b. Associazione 1:N (uno a molti) o semplice Ogni istanza della prima entità si può associare a una o più istanze della seconda entità, mentre ogni istanza della seconda entità si deve associare ad una sola istanza della prima. Il grado a molti si rappresenta con l'aggiunta di altre due linee in prossimità dell'entità di arrivo. a.a. 2001/2002 1.22

Associazione n:n 1.23 Associazione n:n (molti a molti) o complessa Cliente fornito da abbinato a Fornitore Cliente Ordine Fornitore Numero Data c. Associazione N:N (molti a molti) o complessa Ogni istanza della prima entità si può associare a una o più istanze della seconda entità e viceversa. L associazione molti a molti può essere facilmente scomposta in due associazioni uno a molti, anche per consentire di rappresentare gli attributi dell associazione. Per esempio Ogni Studente può essere valutato in uno o più Corsi. Ogni Corso può essere frequentato da uno o più Studenti. Si introduce la nuova entità Prova d'esame Ogni Studente può essere sottoposto a una o più Prove d esame. Ogni Prova d esame deve essere riferita a un solo Studente. Ogni Corso può essere controllato con una o più Prove d esame. Ogni Prova d esame deve essere riferita ad un solo Corso. L associazione molti a molti è stata trasformata in due associazioni uno a molti, con l'aggiunta di una terza entità. a.a. 2001/2002 1.23

Esercizi. Individuare le entità, gli attributi, le associazioni e le chiavi. Disegnare il modello E/R con i versi delle associazioni. Verificare lo schema con le regole di lettura. 1.24 1.1. Clienti, Fatture emesse. 1.2. Soci di una Biblioteca e prestiti di libri. 1.3. Reparti, Dipendenti che lavorano in diversi reparti. 1.4. Videoteca suddivisa per soggetti. 1.5. Prenotazione di visite specialistiche presso gli uffici del Servizio Sanitario. 1.6. Materie prime per fare prodotti finiti 1.1 OGNI Cliente(codice, nome, indirizzo) PUO ESSERE intestatario di UNA O PIU Fatture OGNI Fattura(numero, data, prodotto, importo, codice_cliente) PUO ESSERE intestata a UN SOLO Cliente 1.2 OGNI Socio(tessera, nome, telefono) PUO ESSERE in possesso di UNO O PIU Libri OGNI Libro(codice, titolo, autore, prestito, data, tessera_socio ) PUO ESSERE in prestito a UN SOLO Socio 1.3 OGNI Dipendente(matricola, nome) PUO ESSERE occupato in UNO O PIU Reparti OGNI Reparto(codice, nome) PUO ESSERE fatto funzionare da UNO O PIU Dipendenti scomponibile in OGNI Dipendente(matricola, nome) PUO ESSERE occupato in UNA O PIU Mansioni OGNI Mansione(tipo di mansione, matricola_dipendente, codice_reparto) DEVE ESSERE riferita a UN SOLO Dipendente OGNI Reparto(codice, nome) PUO ESSERE fatto funzionare con UNA O PIU Mansioni OGNI Mansione(tipo di mansione, matricola_dipendente, codice_reparto) DEVE ESSERE riferita a UN SOLO Reparto 1.4 OGNI Videocassetta(codice, titolo, durata) DEVE ESSERE abbinata a UN SOLO soggetto OGNI Soggetto(codice, descrizione) PUO ESSERE relativo a UNA O PIU videocassette 1.5 OGNI Cittadino(tessera sanitaria) PUO ESSERE in prenotazione per UNA O PIU Visite OGNI Visita(codice, descrizione) PUO ESSERE prenotata da UNO O PIU Cittadini scomponibile in OGNI Cittadino(tessera sanitaria) PUO ESSERE in prenotazione di UNO O PIU Appuntamenti OGNI Appuntamento(data, ora, tessera sanitaria, codice visita) DEVE ESSERE relativo a UN SOLO Cittadino OGNI Visita(codice, descrizione) PUO ESSERE prenotata con UNO O PIU Appuntamenti OGNI Appuntamento(data, ora, tessera sanitaria, codice visita) DEVE ESSERE relativo a UNA SOLA Visita 1.6 OGNI MateriaPrima(nome) PUO ESSERE impiegata per UNO O PIU Prodotti OGNI Prodotto(nome) DEVE ESSERE composto da UNA O PIU MateriePrime scomponibile in OGNI MateriaPrima(nome) PUO ESSERE impiegata per UNA O PIU Lavorazioni OGNI Lavorazione(codice, nome_materiaprma, nome_prodotto) DEVE ESSERE riferita a UNA SOLA MateriaPrima OGNI Prodotto(nome) DEVE ESSERE composto con UNA O PIU Lavorazioni OGNI Lavorazione(codice, nome_materiaprma, nome_prodotto) DEVE ESSERE riferita a UN SOLO Prodotto a.a. 2001/2002 1.24