Modello ER a modello relazionale
Il modello ER, quando concettualizzato in diagrammi, offre una buona panoramica della relazione tra entità, che è più facile da capire. I diagrammi ER possono essere mappati su schemi relazionali, ovvero è possibile creare schemi relazionali utilizzando il diagramma ER. Non è possibile importare tutti i vincoli ER nel modello relazionale, ma è possibile generare uno schema approssimativo.
Sono disponibili diversi processi e algoritmi per convertire i diagrammi ER in schemi relazionali. Alcuni di loro sono automatizzati e alcuni di loro sono manuali. Potremmo concentrarci qui sul contenuto del diagramma di mappatura alle basi relazionali.
I diagrammi ER comprendono principalmente:
- Entità e suoi attributi
- Relazione, che è associazione tra entità.
Entità di mappatura
Un'entità è un oggetto del mondo reale con alcuni attributi.
Processo di mappatura (algoritmo)
- Crea una tabella per ogni entità.
- Gli attributi dell'entità dovrebbero diventare campi di tabelle con i rispettivi tipi di dati.
- Dichiara la chiave primaria.
Mappatura delle relazioni
Una relazione è un'associazione tra entità.
Processo di mappatura
- Crea una tabella per una relazione.
- Aggiungi le chiavi primarie di tutte le Entità partecipanti come campi della tabella con i rispettivi tipi di dati.
- Se la relazione ha un attributo, aggiungi ogni attributo come campo della tabella.
- Dichiarare una chiave primaria che componga tutte le chiavi primarie delle entità partecipanti.
- Dichiara tutti i vincoli di chiave esterna.
Mappatura di insiemi di entità deboli
Un insieme di entità debole è uno a cui non è associata alcuna chiave primaria.
Processo di mappatura
- Crea una tabella per l'insieme di entità deboli.
- Aggiungi tutti i suoi attributi alla tabella come campo.
- Aggiungi la chiave primaria di identificazione del set di entità.
- Dichiara tutti i vincoli di chiave esterna.
Mappatura delle entità gerarchiche
La specializzazione o la generalizzazione ER si presenta sotto forma di insiemi di entità gerarchiche.
Processo di mappatura
Crea tabelle per tutte le entità di livello superiore.
Crea tabelle per entità di livello inferiore.
Aggiungi le chiavi primarie delle entità di livello superiore nella tabella delle entità di livello inferiore.
Nelle tabelle di livello inferiore, aggiungi tutti gli altri attributi delle entità di livello inferiore.
Dichiarare la chiave primaria della tabella di livello superiore e la chiave primaria per la tabella di livello inferiore.
Dichiarare i vincoli di chiave esterna.