Traduzione ER - relazionale

Documenti analoghi
Progettazione logica Fase 2: Traduzione nel modello relazionale. adattato da Atzeni et al., Basi di dati, McGrawHill

Atzeni, Ceri, Paraboschi, Torlone Basi di dati

Traduzione dal modello E/R al modello relazionale

Modello Entità-Relazione

IL MODELLO ENTITÀ- RELAZIONE. Gli altri costruttori

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

Atzeni, Ceri, Paraboschi, Torlone Basi di dati. Progettazione logica. Attenzione

Il modello logico dei dati

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

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

I database. Introduzione alla teoria delle basi di dati

Database. Cos è un database? Intro Tipi di entità Mapping ER/EER à Relazionale

Lezione 4. Dallo schema ER al relazionale

Il modello Entità/Relazioni (ER)

Informatica Industriale Modello funzionale: Informazione Modello Entità-Relazione

Corso di Basi di Dati

Ciclo di vita di un sistema informativo

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

SCHEMA E/R DI UNA UNIVERSITA'

Progettazione logica

Progettazione di Basi di Dati

3 Algebra Relazionale

Traduzione dello schema E-R in modello logico relazionale

Generalizzazione. Docente : Alfredo Cuzzocrea Tel. : Informatica

Basi di dati. Progettazione di basi di dati: Metodologie e modelli

Requisiti della base di dati. Schema concettuale

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

Conversione Modello ER in Modello Relazionale. A.Bardine - Conversione Modello ER in Modello Relazionale

Query. Query (Interrogazioni) SQL SQL. Significato dell interrogazione. Sintassi

IL MODELLO ENTITA - RELAZIONE

PROGETTAZIONE LOGICA. Prof. Ing. Alfredo GARRO 1/6. Artista. Cantante. DataDiNascita. Codice. Nazionalità

Basi di Dati 1 Esercitazione 5 08/01/2013. Matteo Picozzi

Un esempio di progettazione concettuale

LA PROGETTAZIONE CONCETTUALE

ESERCIZI DI MODELLAZIONE E-R

Modello Entità-Relazione (E-R)

RELAZIONI E BASI DI DATI

ESAME di INFORMATICA e ARCHIVIAZIONE

Progettazione di basi di dati

Programmazione con Java

Progettazione di basi di dati: Progettazione Concettuale e Progettazione Logica

Esempio di database relazionale con l utilizzo del prodotto MySQL

PROGETTAZIONE DI DATABASE

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

ESERCIZI DI MODELLAZIONE E-R

Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 27 Marzo 07 Nome: Cognome: Matricola:

Normalizzazione. Università degli Studi del Sannio Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica

Basi di Dati. Il Modello Entità-Relazione. Il Modello Entità-Relazione

Esercitazione 1: DB-MAIN e modello E/R

Definire tramite una grammatica ad attributi il

Il modello Entity-Relationship: elementi avanzati

Progettazione logica relazionale (1/2)

Esercizi su Modello Relazionale

Semplici esercizi relativi agli schemi E/R e prog. logica. Esempio A : Orario delle lezioni dei corsi

Progettare Basi di Dati

Basi di dati Progettazione logica. Elena Baralis Politecnico di Torino

Progettazione di basi di dati

Lezione 3. Modellazione dei Dati mediante il Modello Entità Associazione (ER)

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

Strutture fisiche di accesso

Normalizzazione. Definizione

Progettazione logica

IL MODELLO ENTITY RELATIONSHIP. il modello ER 1

B a s i d i D a t i ( M o d u l o T e o r i a ) P r o v a s c r i t t a

Algebra relazionale: operazioni

Esercizio 1: un semplice schema concettuale. Descrivere lo schema concettuale della seguente realtà:

NORME E REGOLAMENTI. Per l A.A è stata fissata la scadenza al 6 novembre 2006.

Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2010/2011. Basi di dati

Laboratorio di Basi di Dati

<Nome Tabella>.<attributo>

Alessandra Raffaetà. Esercizio: Cinema

2 Algebra Relazionale

Tipi di operatori. Gli operatori dell algebra relazionale sono classificabili nelle seguenti categorie:

Esercitazione 5 Progettazione Concettuale e logica

Numero di Componenti

Transcript:

Traduzione ER - relazionale 1

Introduzione Algoritmo applicato ad uno schema ER ristrutturato:!! I. Traduzione delle entità (non deboli)! II. Traduzione delle associazioni 2

I.Traduzione delle entità (1) Ogni entità origina una tabella! Gli attributi dell entità sono i campi della tabella! Gli identificatori dell entità sono le chiavi della tabella! Attributi opzionali dell entità determinano l ammissibilità del valore NULL dei campi corrispondenti 3

I.Traduzione delle entità (2) id E A 1 A 2 A 3 A n E(id,A 1,A 2,A 3,A n ) 4

Esempi (1) Studente matricola cog data_nascita Studente(matricola,,cog,data_nascita) 5

II.Traduzione delle associazioni (1) Si procede in base alla cardinalità dell associazione:! Associazione molti a molti:! Si genera una nuova tabella, la cui chiave è l unione delle chiavi delle tabelle ottenute dalle entità coinvolte dall associazione! Gli unici ulteriori attributi (campi) corrispondono agli attributi dell associazione 6

II.Traduzione delle associazioni (2) Associazioni molti a molti A 1 A 2 E A (-,N) R (-,N) E B B 1 B 2 C 1 C 2 E A (A1,A2) E B (B1,B2) E R (A1,B1,C1,C2) 7

Esempi (3) matricola Studente (0,N) esame (0,N) Corso CFU voto lode Studente(matricola,) Corso(,CFU) Esame(matrStudente,Corso,voto,lode) 8

II.Traduzione delle associazioni (3) Si procede in base alla cardinalità dell associazione:! Associazione uno a molti: 2 alternative! Si genera una nuova tabella, i cui attributi sono le chiavi delle 2 tabelle (ed eventuali attributi dell associazione). La chiave è la chiave della tabella ottenuta dall entità che partecipa all associazione con cardinalità (-,1)! Si aggiungono agli attributi della tabella ottenuta dall entità che partecipa all associazione con cardinalità (-,1)! la chiave della tabella ottenuta dall entità che partecipa all associazione con cardinalità (-,N)! Eventuali attributi dell associazione 9

II.Traduzione delle associazioni (4) Associazioni uno a molti A 1 A 2 E A (-,1) (-,N) R E B B 1 B 2 C 1 C 2 E A (A1,A2) E B (B1,B2) E R (A1,B1,C1,C2) 10

II.Traduzione delle associazioni (5) Associazioni uno a molti A 1 A 2 E A (-,1) (-,N) R E B B 1 B 2 C 1 C 2 E A (A1,A2,B1,C1,C2) E B (B1,B2) 11

II.Traduzione delle associazioni (6) Associazioni uno a molti La scelta tra le due alternative è determinata dalla cardinalità minima di partecipazione all associazione (dal lato di E A ):! (1,1): è preferibile modificare lo schema di E A, dato che ogni tupla sarà legata ad una tupla di E B! (0,1): se gli elementi di E A che partecipano all associazione sono solo una (piccola) parte del totale, conviene generare la tabella E R! La modifica dello schema di E A comporterebbe la presenza di (molti) valori NULL per gli attributi B1, C1 e C2 in corrispondenza delle tuple che non hanno legami 12

Esempi (4) matricola Docente (1,1) (1,N) afferenza Dipartimento citta Docente(matricola,) Dipartimento(,citta) 13

Esempi (4) matricola Docente (1,1) (1,N) afferenza Dipartimento citta Docente(matricola,,dipartimentoAfferenza) Dipartimento(,citta) 14

II.Traduzione delle associazioni (7) Si procede in base alla cardinalità dell associazione:! Associazione uno a uno: 2 alternative! Si genera una nuova tabella, i cui attributi sono le chiavi delle 2 tabelle (ed eventuali attributi dell associazione). Le chiavi delle due tabelle di partenza sono entrambe, singolarmente, chiavi della nuova tabella! Si aggiungono agli attributi di una tabella (se c è, quella con partecipazione obbligatoria all associazione)! la chiave dell altra tabella, a sua volta con il ruolo di chiave! Eventuali attributi dell associazione 15

II.Traduzione delle associazioni (8) Associazioni uno a uno A 1 A 2 E A (-,1) (-,1) R E B B 1 B 2 C 1 C 2 E A (A1,A2) E B (B1,B2) E R (A1,B1,C1,C2) 16

II.Traduzione delle associazioni (9) Associazioni uno a uno A 1 A 2 E A (1,1) (-,1) R E B B 1 B 2 C 1 C 2 E A (A1,A2,B1,C1,C2) E B (B1,B2) 17

Esempi (5) matricola Direttore (1,1) (1,1) direzione Dipartimento citta Direttore(matricola,) Dipartimento(,citta) 18

Esempi (5) matricola Direttore (1,1) (1,1) direzione Dipartimento citta Direttore(matricola,,dipartimentoDiretto) Dipartimento(,citta) 19

Esempi (5) matricola Direttore (1,1) (1,1) direzione Dipartimento citta Direttore(matricola,) Dipartimento(,citta,direttore) 20

Esempi (6) CF Uomo (0,1) (0,1) sposati Donna CF data_nozze Uomo(CF,) Donna(CF,) Sposati(marito,moglie,data_nozze) 21

Associazioni ricorsive (1) Casi particolari di associazioni binarie! Vanno trattate come descritto nel passo II, a seconda delle cardinalità 22

Associazioni ricorsive (2) (1,N) capo Impiegato matricola livello supervisione (1,1) subordinato 23

Associazioni ricorsive (2) Impiegato (1,N) supervisione matricola livello Rappresentiamo due volte la stessa entità.! N.B. : non significa che abbiamo due entità Impiegato! Nel E-R non posso avere due entità con lo stesso!!! (1,1) Impiegato(matricola,, livello) Impiegato matricola livello 24

Associazioni ricorsive (2) Impiegato (1,N) supervisione matricola livello Impiegato(matricola,, livello, matricolacapo) (1,1) Impiegato matricola livello 25