Progettazione Logica. Progettazione Logica



Documenti analoghi
Basi di dati Progettazione logica. Elena Baralis Politecnico di Torino

Progettazione logica relazionale (1/2)

Progettazione concettuale

Informatica (Basi di Dati)

Progettazione base dati relazionale

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

Esercitazione di Basi di Dati

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

Basi di Dati Relazionali

SISTEMI INFORMATIVI AVANZATI -2010/ Introduzione

Gestione Voti Scolastici

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

Progettazione di Database

Progettaz. e sviluppo Data Base

Capitolo 8. Esercizio 8.1

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

Progettazione di Basi di Dati

Traduzione da ER a Relazionale

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

Basi di Dati. Conversione Modello ER in Modello Relazionale. K. Donno - Conversione Modello ER in Modello Relazionale

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

Progettazione di Database. Un Esempio

Prova scritta del corso di Basi di dati attive 17 Dicembre Agenzia

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

Esercitazione 7 Progettazione concettuale. Versione elettronica: L07.progConcettuale.pdf

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

CAPITOLO 7 ESERCIZI SUL MODELLO ER

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

11 - Progettazione Logica

Composizione. Tipo. Pubblicità. Numero ripetizioni. (1,N) (1,1) Composizione. Tipo. Messaggio promozionale. Codice. Azienda. Prodotto.

Rappresentazione grafica di entità e attributi

Alessandra Raffaetà. Basi di Dati

I livelli di progettazione possono essere così schematizzati: Esistono tre tipi diversi di modelli logici: Modello gerarchico: Esempio SPECIFICHE

Basi di dati I Soluzione Quinto Homework del 9 gennaio 2013

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

Lezione 5: Progettazione di Software e Database. Ingegneria del Software. Il Software 19/11/2011. Dr. Luca Abeti

Basi di dati 9 febbraio 2010 Compito A

Identificatori delle entità

database: modello entityrelationship

PROGETTAZIONE DI UN DATABASE

TEORIA sulle BASI DI DATI

Il modello Entity-Relationship per il progetto delle basi di dati

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

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

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

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

MODELLO E/R. Modellazione dei dati

Corso di Laboratorio di Basi di Dati

BASE DI DATI: sicurezza. Informatica febbraio ASA

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

Organizzazione degli archivi

GENERALIZZAZIONE E SPECIALIZZAZIONE ISA 1

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

Corso di Informatica (Basi di Dati)

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

Stefania Marrara - Esercitazioni di Tecnologie dei Sistemi Informativi. Integrazione di dati di sorgenti diverse

CAPITOLO 9 ESERCIZI SULLA PROGETTAZIONE LOGICA

Introduzione alla teoria dei database relazionali. Come progettare un database

DATABASE. A cura di Massimiliano Buschi

La Progettazione Concettuale

70555 Informatica Sicurezza Mario Rossi Anna Bianchi. Esempio istanza:

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

1.Tutte 2.Spesso P.IVAe le CF volte che si visualizza i dati un fornitore si mostranoanche. La mensa. La mensa

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

Segreteria da campo. Database Relazionali

Lezione 2. Il modello entità relazione

I database. Cosa sono e a cosa servono i Database

Progettazione di un DB....in breve

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

LABORATORIO di INFORMATICA

PROGETTAZIONE CONCETTUALE

Dal modello concettuale al modello logico

EXPLOit Content Management Data Base per documenti SGML/XML

Design di un database

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

GERARCHIA IS-A (è un) GENERALIZZAZIONI / SPECIALIZZAZIONI ESEMPIO 1

Capitolo 13. Interrogare una base di dati

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

BASI DI DATI - : I modelli di database

PROGETTAZIONE CONCETTUALE

Uso delle variabili di alias. SQL slide aggiuntive. Interrogazione 25. Interrogazione 26

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

Sviluppata da: Lo Russo - Porcelli Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL.

Basi di Dati e Microsoft Access

Informatica per l'impresa. Sistemi per la gestione di basi di Dati

Il Modello Relazionale

Vincoli di integrità

Database 1 biblioteca universitaria. Testo del quesito

Secondo Compitino di Basi di Dati

Progettazione di una base di dati Ufficio della Motorizzazione

N ORE LEZIONI FRONTALI: STUDIO INDIVIDUALE ( ) N ORE ESERCITAZIONI/LABORATORIO: STUDIO INDIVIDUALE ( )

Esercizi di progettazione E-RE

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

Esercitazione 3: progettazione logica. Sistemi Informativi L-B. Home Page del corso:

Progettazione di Database

Corso sul linguaggio SQL

ARCHIVI E DATABASE (prof. Ivaldi Giuliano)

Guida all uso di Java Diagrammi ER

Sistemi di Elaborazione delle Informazioni (C.I. 15) Access

Transcript:

Consorzio per la formazione e la ricerca in Ingegneria dell'informazione Tabelle per ogni concetto Docente: Cesare Colombo CEFRIEL colombo@cefriel.it http://www.cefriel.it Passaggio al modello logico (1) Dopo aver definito il COSA, possiamo passare a definire il COME L obiettivo è arrivare a definire lo schema logico secondo il tipo di DB utilizzato Per un DB relazionale sarà uno SCHEMA RELAZIONALE (ovvero tabelle e attibuti) Aver definito il modello concettuale tramite schemi E-R ci semplifica il processo rendendolo praticamente un passaggio automatico - 2-2003 - Cesare Colombo 1

Passaggio al modello logico (2) Due passaggi fondamentali: Ristrutturazione: è indipendente dal modello logico e ha lo scopo di ottimizzare lo schema e semplificare la fase successiva Traduzione: fa riferimento al modello logico prescelto e può comportare anche una ulteriore ottimizzazione del modello Noi eseguiremo solo le ottimizzazioni che sono utili ai fini della traduzione nel modello relazionale - 3 - Passo 1: Eliminazione delle gerarchie Il modello relazionale non permette una rappresentazione diretta della generalizzazione E necessario trasformare le generalizzazioni in costrutti rappresentabili: entità e relazioni? - 4-2003 - Cesare Colombo 2

Passo 1: A-Eliminazione gerarchie: in alto Si usa quando: ( ) le operazioni non fanno molta distinzione fra le occorrenze e gli attributi di E0, E1 e E2 ( ) le entità figlie sono poco caratterizzate Esempio Partecipa CF Cognome Età Partecipante CittàNasc Partecipa CF Cognome Età Partecipante CittàNasc Lavoro attuale (1,1) Dipendente Consulente Titolo Lavoro attuale (0,1) Tipo (0,1) Livello - 5 - Passo 1: A-Eliminazione gerarchie: in alto In generale: Le entità figlie vengono eliminate e le loro proprietà vengono aggiunte al padre come attributi facoltativi (possono assumere valori nulli ) Viene aggiunto un attributo all entità padre per distinguere il tipo delle occorrenze Le relazioni associate ai figli vengono associate al padre con cardinalità minima pari a 0-6 - 2003 - Cesare Colombo 3

Passo 1: B-Eliminazione gerarchie: in basso Si usa quando: ( ) la generalizzazione è totale (so classificare ogni occorrenza di E0) e le operazioni fanno sempre riferimento alle sottoclassi ( ) le entità figlie sono poco caratterizzate Partecipa CF Cognome Partecipante t Lavoro attuale CF Cognome Dipendente Livello Posizione CF Cognome Consulente Titolo Esperienza Lavoro attuale Dipendente Consulente Titolo Esperienza Livello Posizione Partecipa - 7 - Passo 1: B-Eliminazione gerarchie: in basso In generale: L entità padre viene eliminata La chiave, gli attributi e le relazioni sono ereditati dalle entità figlie - 8-2003 - Cesare Colombo 4

Passo 1: C-Eliminazione gerarchie: duplice Si usa quando: ( ) la generalizzazione non è totale (anche se non è condizione necessaria) e le operazioni fanno distinzione fra l entità padre e le entità figlie ( ) tutte le entità sono ben caratterizzate CF Cognome CF Cognome Partecipa Partecipante Partecipa Partecipante (0,1) (0,1) Lavoro attuale Dipendente Livello Posizione Consulente Titolo Esperienza - 9 - Lavoro attuale Dati Dip. Dati Cons. (1,1) (1,1) Dipendente Livello Posizione Consulente Titolo Esperienza Passo 1: C-Eliminazione gerarchie: duplice In generale: La generalizzazione si trasforma in due associazioni uno a uno che legano il padre con le entità figlie Le entità figlie sono identificate esternamente dal padre Vanno aggiunti dei vincoli: le occorrenze di E 0 non possono partecipare contemporaneamente ad entrambe le relazioni - 10-2003 - Cesare Colombo 5

Passo 2: Eliminazione attributi multivalore L attributo multivalore diventa una nuova entità che viene messa in relazione con l entità cui apparteneva - 11 - Passo 3: Scelta delle chiavi primarie Gli attributi con valori nulli non possono essere identificatori principali Identificatori composti da pochi attributi sono da preferire a quelli con molti attributi Identificatori composti da pochi attributi sono da preferire a identificatori esterni Un identificatore che viene utilizzato da molte operazioni per accedere alle occorrenze di una entità è da preferire agli altri In ogni caso è bene tenere traccia di tutti gli identificatori (possono essere utili per il modello fisico indici secondari) - 12-2003 - Cesare Colombo 6

Passi 4 e 5: Traduzione al modello relazionale Regola Generale Per ogni entità si definisce una tabella con lo stesso nome aventi per attributi gli stessi attributi e per chiave l identificatore Per ogni associazione si definisce una tabella con lo stesso nome avente per attributi gli stessi attributi e per chiave gli identificatori delle entità coinvolte (legate con vincolo di integrità referenziale) Nel seguito applicheremo la regola per i tre tipi di relazioni esaminati in precedenza - 13 - Associazioni Molti a Molti Impiegato N Partecipazione N Progetto Nome Matricola Data Inizio Nome Codice IMPIEGATO (Matricola, Nome) PROGETTO(Codice, Nome) PARTECIPAZIONE(Matricola, Codice, Data Inizio) - 14-2003 - Cesare Colombo 7

Associazioni Uno a Molti Giocatore 1 N Contratto Squadra Ruolo CodiceFiscale Ingaggio Città Nome GIOCATORE (CodiceFiscale, Ruolo) SQUADRA(Nome, Città) CONTRATTO(CodiceFiscale, Nome, Ingaggio) GIOCATORE (CodiceFiscale, Ruolo, Nome, Ingaggio) SQUADRA(Nome, Città) - 15 - Associazioni Uno a Uno Direttore Nome Codice 1 1 Direzione Data Inizio Dipartimento Nome DIRETTORE (Codice, Nome, Data Inizio, NomeDipartimento) DIPARTIMENTO(Nome, ) oppure DIRETTORE (Codice, Nome,) DIPARTIMENTO(Nome,, Data Inizio, Direttore) - 16-2003 - Cesare Colombo 8

Entità con identificatore esterno Studente Nome Matricola (1,1) Iscrizione Università Nome Indirizzo STUDENTE (Matricola, NomeUniversità, NomeStudente) UNIVERSITA (Nome, Indirizzo) Rappresentando l identificatore esterno come chiave nell entità studente si rappresenta direttamente anche l associazione Questo è sempre vero perché un identificatore esterno si può avere solo con associazioni aventi cardinalità (1,1) - 17 - Documentazione di schemi logici Anche nella progettazione logica, il risultato finale non è solo lo schema, ma è necessaria una documentazione opportuna Si eredita la documentazione concettuale opportuna Esempio: regole aziendali Si documenta lo schema con una rappresentazione grafica che evidenzia chiavi vincoli di integrità referenziale - 18-2003 - Cesare Colombo 9

Esercizio1: tradurre lo schema (1) - 19 - Esercizio1: tradurre lo schema (2) - 20-2003 - Cesare Colombo 10

Esercizio1: tradurre lo schema (3) - 21 - Esercizio2: tradurre lo schema (1) Operazioni: operano prevalentemente su PARTECIPANTE (TRAINEE) e ISTRUTTORE - 22-2003 - Cesare Colombo 11

Esercizio2: tradurre lo schema (2) Ristrutturazione (1) NOTA: NOTA: le le operazioni operazioni non non distinguono distinguono fra fra i i partecipanti partecipanti ma ma ci ci sono sono specifici specifici attributi attributi sulle sulle sottoclassi sottoclassi NOTA: NOTA: le le operazioni operazioni non non distinguono distinguono fra fra i i docenti docenti ee non non ci ci sono sono attributi attributi sulle sulle sottoclassi sottoclassi - 23 - Esercizio2: tradurre lo schema (3) Ristrutturazione (2) Attributi multivalore: telefono viene trasformato in entità Identificatori Course edition: per evitare uso di ident. esterno introduco un nuovo attributo Trainee: fra i due possibili identificatori scelgo quello che verrà usato di più e occupa meno memoria (code) - 24-2003 - Cesare Colombo 12

Esercizio2: tradurre lo schema (4) - 25 - Esercizio2: tradurre lo schema (5) - 26-2003 - Cesare Colombo 13

Bibliografia Paolo Atzeni, Stefano Ceri, Stefano Paraboschi, Riccardo Torlone - Seconda edizione Capitolo 7-27 - 2003 - Cesare Colombo 14