Alessandra Raffaetà. Schemi a oggetti -> Schemi relazionali

Documenti analoghi
S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali. Alessandra Raffaetà

S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali. Alessandra Raffaetà

Alessandra Raffaetà. Esempio: Compagnia di trasporti

Alessandra Raffaetà. La costruzione di una base di dati

Basi di Dati - III. La costruzione di una base di dati. Progettazione concettuale di schemi. Esercizio: Segreteria studenti

Slide del corso (da cui queste sono tratte) Enrolment Key: BD_online

IL MODELLO RELAZIONALE

Il modello relazionale

MODELLI INFORMATICI. Definizione Un modello astratto è la rappresentazione formale di idee e conoscenze relative a un fenomeno.

Progettazione logica relazionale. Basi di dati. Elena Baralis 2007 Politecnico di Torino D B M G D B M G3 D B M G6 D B M G5

Fase di Analisi Class Diagram. Esercizi

Basi di Dati - III. La costruzione di una base di dati. Progettazione concettuale di schemi. Esercizio: Segreteria studenti

Fondamenti di Informatica e Programmazione

Progettazione logica relazionale (1/2) Progettazione logica. Progettazione logica relazionale (2/2) Introduzione. Progettazione logica

Progettazione di basi di dati D B M G

Fase di Analisi Class Diagram. Esercizi

Progettazione logica relazionale (1/2)

Progettazione logica

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

Gerarchia di Generalizzazione. Esempio. Rappresentazione grafica. Cap. 4 - Modello E/R avanzato: Gerarchie di Generalizzazione/ specializzazione

Università degli Studi di Milano. Esercizi Corso SIT. Basi di dati

Mirco Nanni ISTI CNR, Pisa. CdL in Lettere A.A. 2007/2008

Laboratorio di Basi di Dati

Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 22 Giugno 04 Nome: Cognome: Matricola:

IL MODELLO ENTITÀ- RELAZIONE. Gli altri costruttori

Scopo Laboratorio di Informatica

adattato da Atzeni et al., Basi di dati, McGrawHill

Informatica per le Scienze Umane. Introduzione al corso: programma dettagliato

Requisiti della base di dati. Schema concettuale

I database. Introduzione alla teoria delle basi di dati

BASE DI DATI. Esercizio: FACEBOOK Progettazione concettuale Progettazione logica. Informatica Umanistica Università di Pisa

Il modello Entità-Relazioni (entity-relationship)

Corso di Laurea in Ingegneria Informatica Fondamenti di informatica II Modulo Basi di dati a.a

BASE DI DATI. Progettazione logica. Informatica Umanistica Università di Pisa

DATABASE - MODELLO E-R CHIAVI E ATTRIBUTI TRATTO DA CAMAGNI-NIKOLASSY, CORSO DI INFORMATICA, VOL 2, HOEPLI. Informatica

Analisi delle ridondanze

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

Alessandra Raffaetà. La rappresentazione vettoriale

Scopo Informatica. Sistema informativo. Sistema informatico. Gestione dell informazione per le lauree triennali

La progettazione logica

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Capitolo 6: Progettazione di basi di dati: Metodologie e modelli

Atzeni, Ceri, Paraboschi, Torlone Basi di dati

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

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Obiettivo della progettazione logica. Dati di ingresso e uscita

Informatica. per laurea triennale di area non informatica. 1 Le basi di dati

Basi di Dati 1 Esercitazione 4 27/11/2012. Matteo Picozzi

Partizionamento/accorpamento di concetti

Basi di Dati 1! Esercitazione 4. Matteo Picozzi!

Informatica per le Scienze Umane. Introduzione al corso: programma

Traduzione. Scelta degli identificatori principali

Modello Entità-Relazione (E-R)

Basi di Dati. Modello Concettuale

E. Giunchiglia Basi di dati 1 (trasparenze basate su Atzeni,, Ceri, Paraboschi, Torlone: : Basi di dati, Capitolo 8) Progettazione logica

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

Architettura CPU. Memoria principale (RAM) Dispositivi di ingresso. Dispositivi di uscita. Memoria secondaria (memoria di massa)

Fondamenti di Informatica A. A / 1 9

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

Progettazione Logica. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma

Modello relazionale e algebra relazionale

Laboratorio di Basi di Dati

Progettazione di un DB

Altri costrutti del modello E-R. Esempio di cardinalità. Cardinalità di Residenza. Occorrenze di Residenza. Cardinalità di relationship

Informatica Industriale

Scopo. Informatica. Sistema informativo. Sistema informatico

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw -Hill, Progettazione logica. Dati di ingresso e uscita

D B M G. Sistemi informativi. Modello relazionale e algebra relazionale. Modello relazionale. Algebra relazionale

Basi di dati McGraw-Hill

Elena baralis 2007 Politecnico di Torino 1

Ciclo di vita di un sistema informativo

Laboratorio di Basi di Dati

Corso integrato di Sistemi di Elaborazione. Modulo I. Prof. Crescenzio Gallo.

La progettazione logica Traduzione dal modello Entità-Associazione al modello relazionale Anno accademico 2008/2009

Basi di Dati e Sistemi Informativi. Progettazione Concettuale: Il modello Entità-Relazioni

Basi di dati. IL MODELLO RELAZIONALE Figure ed esempi. 09/10/2017 Atzeni - Basi di dati - Modello relazionale, figure ed esempi

IL MODELLO RELAZIONALE. Patrizio Dazzi a.a

Corso di Informatica

Il Modello Entità Relazione (ER)

Modello relazionale e algebra relazionale

Ristrutturazione di schemi E-R. Ridondanze. Analisi delle ridondanze. Vantaggi semplificazione delle interrogazioni

Basi di dati. Progettazione logica

Elena Baralis 2007 Politecnico di Torino 1

La Progettazione Logica

Basi di Dati. Progettazione Logica

Basi di Dati Relazionali

Indicare quale o quali delle seguenti affermazioni sono vere?

PROGETTAZIONE CONCETTUALE

Progettazione logica. Requisiti della base di dati. Schema concettuale. Schema logico. Schema fisico. Obiettivo della progettazione logica

PRINCIPI DI INFORMATICA CORSO DI LAUREA IN SCIENZE BIOLOGICHE

RELAZIONI E BASI DI DATI

Elena baralis 2007 Politecnico di Torino 1

Elena baralis 2007 Politecnico di Torino 1

Basi di Dati. La Progettazione Logica. Sommario. Il Processo di Progetto della BD. Algoritmo di Progettazione Logica

Corso di Progettazione del Software

Model o relazionale 1

Basi di dati (database)

Bravi nello studio, bravi nello sport

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

Transcript:

Lezione 5 S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali Alessandra Raffaetà Dipartimento di Informatica Università Ca Foscari Venezia Schemi a oggetti -> Schemi relazionali Trasformazione per passi: associazioni molti a uno (e uno a uno) associazioni molti a molti gerarchie di inclusione identificazione chiavi primarie attributi composti 1

Schemi a oggetti -> Schemi relazionali Associazioni N:1 (univoche) totalità di R con vincolo not-null sulla chiave esterna eventuali attributi dell associazione si possono inserire in A totalità dell inversa non rappresentabile Es. Prestiti <<- -->Utenti Schemi a oggetti -> Schemi relazionali Associazioni 1:1 (univoche con inversa univoca) univocità di R -1 (inversa di R) con vincolo di chiave sulla chiave esterna possibile solo se R è totale la direzione di R scelta in modo che sia totale, se possibile Es.: Prestiti <- --> Documenti 2

Schemi a oggetti -> Schemi relazionali Associazioni N:M (multivalore con inversa multivalore) eventuali attributi dell associazione si inseriscono in R (in questo caso possono far parte della chiave primaria) totalità non rappresentabile Es.: Relazione HaSostenuto, con attributo Data Esami <<---->> Studenti Trasformazione di Schemi a Oggetti in Relazionali 3

Sottoclassi Data la classe A (attr. XA, chiave KA) con sottoclassi B (attr. XB) e C (attr. XC) Tre possibili soluzioni Relazione unica R(XA, XB, XC, Discr) Discr indica la classe alla quale appartiene l elemento XB e XC possono avere valore nullo Partizionamento verticale RA(XA): tutti gli elementi di A, RB(XB,KA): attributi propri per gli elementi di B RC(XC,KA): attributi propri per gli elementi di C Sottoclassi Partizionamento orizzontale RA(XA): solo gli elementi di A - (B C) RB(XA,XB): elementi di B (tutti gli attributi) RC(XA,XC): elementi di C (tutti gli attributi) 4

Esempio Si consideri la gerarchia seguente: Tabella Unica L attributo InterniEsterni svolge il ruolo di discriminatore 5

Partizionamento Verticale Orizzontale Come scegliere? Tabella unica conveniente se le sottoclassi differiscono per pochi attributi Partizionamento orizzontale complica la visita di tutti gli elementi della superclasse divide la superclasse in più relazioni: sconsigliato se vi è una associazione entrante nella superclasse problematico senza vincolo di disgiunzione Partizionamento verticale complica il recupero di tutte le informazioni relative ad un elemento (distribuite in varie relazioni) 6

Definizioni delle chiavi primarie Relazioni corrispondenti a classi radice (prive di superclasse) attributo univoco, totale, costante attributo artificiale (chiave sintetica) Relazioni che corrispondono a sottoclassi chiave della superclasse Relazioni per associazioni N:M concatenazione delle chiavi esterne Attributi Multivalore e Strutturati 7

Attributi Multivalore e Composti (cont.) Modello relazionale Riassunto relazione + chiave primaria + chiave esterna Dal modello concettuale (a oggetti) al modello logico relazionale associazioni A<<-> B (N:1 oppure 1:1) con chiave esterna in A associazioni A <<->> B (M:N) con una nuova relazione R che riferisce con chiave esterna sia A che B sottoclassi: relazione unica, partizionamento (verticale, orizzontale) attributi multivalore e strutturati 8

Esercizi Esercizio: Regate Si vogliono gestire informazioni relative alle regate. Di una regata interessa il nome, la data e la città in cui si svolge e le barche partecipanti. Di una barca si vuole conoscere il nome della barca, il tipo di imbarcazione, il numero dei remi, l equipaggio. Dei rematori interessa il nome e cognome, l indirizzo, la remiera di appartenenza, il luogo di nascita. Per le città interessa il nome, la provincia e il numero di abitanti. Per ogni regata si vuol inoltre conoscere la barca vincitrice e il tempo impiegato per la regata. Si dia uno schema grafico a oggetti della base di dati e si trasformi nello schema relazionale mostrandone la rappresentazione grafica. Poi per ogni relazione si specifichi il nome degli attributi, la chiave primaria e le chiavi esterne. 9

Regate: Schema concettuale Schema Logico (solo relazioni) 10

Schema delle relazioni (attrbuti, tipi, vincoli) Barche(Nome: string, Tipo: string, NumRemi: int) PK(Nome) Regate(Nome: string. Data: date, Vincitore*: string, TempoVincitore: int, Città*: string) PK(Nome) Vincitore FK(Barche), Città FK(Città) Partecipa(Barca*: string, Regata*: string) PK(Barca, Regata) Barca FK(Barche), Regata FK(Regate) Rematori(Codice: int, Nome: string, Cognome: string, Indirizzo: string, Remiera: string, Città*: string) PK(Codice) Città FK(Città) CondottaDa(Barca*: string, Rematore*: string) PK(Barca, Rematore) Barca FK(Barche), Rematore FK(Rematori) Città(Codice:int, Nome:string, Provincia:string, Abitanti:int) PK(Codice) Schema relazionale con attributi, tipi, vincoli 11

Esercizio Studenti(Nome, Cognome, Matricola, Anno, Esame*) Esami(Codice, Materia, Data, Voto, Lode) Studenti(Nome, Cognome, Matricola, Anno, Esame*) Esami(Codice, Materia, Data, Voto, Lode) Studenti(Nome, Cognome, Matricola, Anno) Esami(Codice, Materia, Data, Voto, Lode) StudentiEsami(Esame*, Candidato*) Studenti(Nome, Cognome, Matricola, Anno) Esami(Materia, Crediti) ProvaEsame(Codice, Esame*, Candidato*, Data, Voto, Lode) Quali sono sensate? Trasformazione nel modello relazionale Si trasformi nello schema relazionale gli schemi ad oggetti per i problemi: Base di dati per una biblioteca Base di dati per un campionato di calcio Si mostri la rappresentazione grafica e poi per ogni relazione si specifichino attributi, chiave primaria e chiavi esterne. 12

Compagnia di trasporti Si vogliono gestire informazioni relative ad una compagnia di trasporti. I veicoli a disposizione sono autobus e automobili. Un autobus effettua un viaggio collegando due città. Di ogni autobus interessa la marca, la targa, il numero dei posti, la città di partenza e la città di arrivo del suo tragitto. Delle automobili interessa la targa, la marca e il colore. Le automobili possono essere noleggiate da una persona di cui interessa l'età, il nome e l indirizzo. Una persona può noleggiare più automobili e un automobile può essere presa in affitto più volte. Di un affitto interessa il periodo. Infine di una città interessa il nome, il numero di abitanti e la provincia in cui si trova. Si dia uno schema grafico a oggetti della base di dati e si trasformi nello schema relazionale mostrandone la rappresentazione grafica. Poi per ogni relazione si specifichino attributi, chiave primaria e chiavi esterne. 13