Cos'è la modellazione ER? Impara con l'esempio

Cos'è la modellazione ER?

Modello di relazione tra entità (ER Modeling) è un approccio grafico alla progettazione di database. È un modello di dati di alto livello che definisce gli elementi di dati e la loro relazione per un sistema software specifico. Un modello ER viene utilizzato per rappresentare oggetti del mondo reale.

An Entità è una cosa o un oggetto nel mondo reale che è distinguibile dall'ambiente circostante. Ad esempio, ogni dipendente di un'organizzazione è un'entità separata. Di seguito sono riportate alcune delle principali caratteristiche delle entità.

  • Un'entità ha un insieme di proprietà.
  • Le proprietà dell'entità possono avere valori.

Consideriamo di nuovo il nostro primo esempio. Un dipendente di un'organizzazione è un'entità. Se "Peter" è un programmatore (an dipendente) a Microsoft, può avere gli attributi (proprietà) come nome, età, peso, altezza, ecc. È ovvio che questi hanno valori rilevanti per lui.

Ogni attributo può avere Valori. Nella maggior parte dei casi i singoli attributi hanno un valore. Ma è possibile che gli attributi abbiano più valori Anche. Ad esempio, l'età di Peter ha un unico valore. Ma la sua proprietà "numeri di telefono" può avere più valori.

Le entità possono avere relazioni insieme. Consideriamo l'esempio più semplice. Supponiamo che ciascuno Microsoft Al programmatore viene fornito un computer. È chiaro che ciò Il computer di Pietro è anche un'entità. Peter sta usando quel computer e lo stesso computer è utilizzato da Peter. In altre parole, esiste una relazione reciproca tra Peter e il suo computer.

In Modellazione delle relazioni tra entità, modelliamo le entità, i loro attributi e le relazioni tra le entità.

Modello Enhanced Entity Relationship (EER).

Il modello Enhanced Entity Relationship (EER) è un modello di dati di alto livello che fornisce estensioni all'originale Relazione tra entità(ER) modello. I modelli EER supportano la progettazione di più dettagli. EER Modeling è emerso come soluzione per modellare database altamente complessi.

EER utilizza la notazione UML. UML è l'acronimo di Linguaggio di modellazione unificato; è un linguaggio di modellazione generico utilizzato durante la progettazione di sistemi orientati agli oggetti. Le entità sono rappresentate come diagrammi di classe. Le relazioni sono rappresentate come associazioni tra entità. Il diagramma mostrato di seguito illustra un diagramma ER utilizzando il Notazione UML.


Relazione tra entità rafforzata (EER)

Perché utilizzare il modello ER?

Ora potresti pensare perché utilizzare la modellazione ER quando possiamo semplicemente creare il database e tutti i suoi oggetti senza modellazione ER? Una delle sfide affrontate durante la progettazione di un database è il fatto che progettisti, sviluppatori e utenti finali tendono a visualizzare i dati e il loro utilizzo in modo diverso. Se questa situazione non viene controllata, possiamo finire per produrre un sistema di database che non soddisfa i requisiti degli utenti.

Gli strumenti di comunicazione compresi da tutte le parti interessate (utenti tecnici e non tecnici) sono fondamentali nella produzione di sistemi di database che soddisfino le esigenze degli utenti. I modelli ER sono esempi di tali strumenti.

I diagrammi ER aumentano anche la produttività degli utenti poiché possono essere facilmente tradotti in tabelle relazionali.

Caso di studio: diagramma ER per la libreria video "MyFlix".

Lavoriamo ora con il sistema di database MyFlix Video Library per comprendere meglio il concetto di diagrammi ER. Utilizzeremo questo database per tutte le esercitazioni nel resto di questo tutorial

MyFlix è un'entità commerciale che noleggia film ai suoi membri. MyFlix ha archiviato i suoi record manualmente. La direzione ora vuole passare ad a DBMS

Diamo un'occhiata ai passaggi per sviluppare il diagramma EER per questo database-

  1. Identificare le entità e determinare le relazioni che esistono tra loro.
  2. Ogni entità, attributo e relazione dovrebbe avere nomi appropriati che possano essere facilmente compresi anche dalle persone non tecniche.
  3. Le relazioni non dovrebbero essere collegate direttamente tra loro. Le relazioni dovrebbero connettere le entità.
  4. Ogni attributo in una determinata entità dovrebbe avere un nome univoco.

Entità nella libreria "MyFlix".

Gli enti da inserire nel ns Diagramma ER siamo;

  • Utenti – questa entità conserverà le informazioni sui membri.
  • Film – questa entità conserverà informazioni relative ai film
  • Categorie – questa entità conserverà informazioni che collocano i film in diverse categorie come "Drama", "Azione" ed "Epico" ecc.
  • Noleggio di film – questa entità conserverà informazioni relative ai film noleggiati ai membri.
  • Pagamenti – questa entità conserverà informazioni sui pagamenti effettuati dai membri.

Definire le relazioni tra le entità

Membri e film

Per quanto riguarda le interazioni tra le due entità vale quanto segue.

  • Un membro può noleggiare più di un film in un dato periodo.
  • Un film può essere noleggiato da più membri in un dato periodo.

Dallo scenario sopra, possiamo vedere che la natura della relazione è molti-a-molti. I database relazionali non supportano le relazioni molti-a-molti. Dobbiamo introdurre un'entità di giunzione. Questo è il ruolo svolto dall'entità MovieRentals. Ha una relazione uno-a-molti con la tabella dei membri e un'altra relazione uno-a-molti con la tabella dei film.

Entità di film e categorie

Quanto segue vale per i film e le categorie.

  • Un film può appartenere a una sola categoria, ma una categoria può contenere più di un film.

Da ciò possiamo dedurre che la natura della relazione tra categorie e tabella dei film è di uno a molti.

Membri ed entità di pagamento

Quanto segue vale per i membri e i pagamenti

  • Un membro può avere un solo account ma può effettuare più pagamenti.

Da ciò possiamo dedurre che la natura del rapporto tra membri ed entità di pagamento è di tipo uno-a-molti.

Ora creiamo il modello EER utilizzando MySQL banco di lavoro

Nel MySQL banco di lavoro, fare clic sul pulsante “+”.

Definire le relazioni tra le entità

Double fare clic sul pulsante Aggiungi diagramma per aprire l'area di lavoro per i diagrammi ER.

Definire le relazioni tra le entità

Viene visualizzata la finestra seguente

Definire le relazioni tra le entità

Diamo un'occhiata ai due oggetti con cui lavoreremo.

  • Definire le relazioni tra le entitàL'oggetto tabella ci consente di creare entità e definire gli attributi associati alla particolare entità.
  • Definire le relazioni tra le entitàIl pulsante Posiziona relazione ci consente di definire le relazioni tra le entità.

La sezione Currents, dedicata a opere audaci e innovative di artisti emergenti e affermati, include la prima statunitense di Mare’s Nest di Ben Rivers, descritto come “un enigmatico road movie ambientato in un mondo post-apocalittico governato da bambini”. Tra gli altri titoli spiccano Dracula di Radu Jude e With Hasan in Gaza di Kamal Aljafari. membri' l'entità avrà i seguenti attributi

  • Numero di iscrizione
  • Nomi completi
  • Genere
  • Data di nascita
  • Indirizzo fisico
  • indirizzo postale

Creiamo ora la tabella dei membri

1.Trascinare l'oggetto tabella dal pannello degli strumenti

2.Rilascialo nell'area di lavoro. Viene visualizzata un'entità denominata tabella 1

3.Double cliccaci sopra. Viene visualizzata la finestra delle proprietà mostrata di seguito

Definire le relazioni tra le entità

Prossimo,

  1. Modificare la tabella 1 in Membri
  2. Modifica l'idtable1 predefinito in membership_number
  3. Fare clic sulla riga successiva per aggiungere il campo successivo
  4. Fai lo stesso per tutti gli attributi identificati nell'entità dei membri.

La finestra delle proprietà ora dovrebbe assomigliare a questa.

Definire le relazioni tra le entità

Ripetere i passaggi precedenti per tutte le entità identificate.

L'area di lavoro del diagramma dovrebbe ora assomigliare a quella mostrata di seguito.

Definire le relazioni tra le entità

Creiamo una relazione tra i membri e i noleggi di film

  1. Seleziona la relazione del luogo utilizzando anche le colonne esistenti
  2. Fai clic su membership_number nella tabella Membri
  3. Fai clic su reference_number nella tabella MovieRentals

Definire le relazioni tra le entità

Ripeti i passaggi precedenti per altre relazioni. Il tuo diagramma ER ora dovrebbe assomigliare a questo:

Sintesi

  • La forma completa di ER è Diagrammi di entità e relazioni. Svolgono un ruolo molto importante nella progettazione di banche dati processi. Fungono da strumento di comunicazione non tecnico per persone tecniche e non tecniche.
  • Le entità rappresentano cose del mondo reale; possono essere concettuali come un ordine di vendita o fisici come un cliente.
  • A tutte le entità devono essere assegnati nomi univoci.
  • I modelli ER consentono inoltre ai progettisti di database di identificare e definire le relazioni esistenti tra le entità.

L'intero modello ER è allegato di seguito. Puoi semplicemente importarlo MySQL banco di lavoro

Fare clic qui per scaricare il modello ER