· Andrea Pollini · basi dati · 4 min read

7 Esercizi sui diagrammi concettuali

Esercizi sui diagrammi concettuali

Esercizi sui diagrammi concettuali

La progettazione concettuale dei database è una fase importante nello sviluppo di un database. In questa fase, si identificano i dati necessari per rappresentare la realtà di interesse e si modellano in modo da soddisfare i requisiti degli utenti.

Un modo efficace per rappresentare i dati è utilizzare i diagrammi ER. I diagrammi ER sono diagrammi grafici che rappresentano le entità, le relazioni tra le entità e gli attributi delle entità.

Per comprendere i concetti fondamentali della progettazione concettuale dei database, è utile esercitarsi nella costruzione di diagrammi ER.

In questo post, presentiamo 5 esercizi sui diagrammi ER, adatti a chi si sta avvicinando a questa disciplina.

Ogni esercizio presenta una descrizione di una situazione reale e richiede di modellare i dati necessari per rappresentare tale situazione utilizzando un diagramma ER.

Gli esercizi sono progettati per essere progressivi, in modo che gli studenti possano esercitarsi gradualmente nelle diverse tecniche di progettazione concettuale dei database.

Suggerimenti per la risoluzione degli esercizi

Ecco alcuni suggerimenti per la risoluzione degli esercizi:

  • Inizia identificando gli enti coinvolti nella situazione.
  • Per ogni ente, identifica gli attributi che sono necessari per rappresentarlo.
  • Identifica le relazioni tra gli enti.
  • Assicurati che le relazioni siano appropriate per il contesto.

Esercizio 1

Un’università ha diversi corsi, ognuno dei quali ha un nome, un codice, una descrizione e un numero massimo di crediti. Ogni corso è tenuto da un docente, che ha un nome, un cognome, un codice fiscale e un indirizzo e-mail.

Soluzione

erDiagram
    DOCENTE one -- one or more CORSO : tiene
    DOCENTE {
        string nome
        string cognome
        string cod_fiscale
        string email
    }
    
    CORSO {
        string nome
        string descrizione
        string codice
        int crediti
    }

Esercizio 2

Un negozio di alimentari vende diversi prodotti, ognuno dei quali ha un nome, un codice, un prezzo e una categoria. Un prodotto può essere fornito da uno o più fornitori, che hanno un nome, un indirizzo e un numero di telefono.

Analisi preliminare

In questo caso, abbiamo una relazione molti-a-molti tra i prodotti e i fornitori. Questa relazione è necessaria per rappresentare il fatto che un prodotto può essere fornito da più fornitori e che un fornitore può fornire più prodotti.

Esercizio 3

Un libro ha un titolo, un autore, un editore e una data di pubblicazione. Un autore può aver scritto più libri e un editore può aver pubblicato più libri.

Esercizio 4

Un’università ha diversi corsi, ognuno dei quali ha un nome, un codice, un numero di crediti, un professore responsabile e una data di inizio e fine. Un professore può insegnare uno o più corsi.

Esercizio 5

Un’azienda ha diversi dipendenti, ognuno dei quali ha un nome, un cognome, un codice fiscale e un indirizzo e-mail. Ogni dipendente può ricoprire uno o più ruoli, ognuno dei quali ha un nome e una descrizione.

Esercizio 6

Una biblioteca ha diversi libri, ognuno dei quali ha un titolo, un autore, un editore, una data di pubblicazione, un genere e un numero di pagine. Un libro può essere prestato a uno o più utenti, che hanno un nome, un cognome, un codice fiscale e un indirizzo e-mail.

Analisi preliminare

In questo caso, abbiamo una relazione molti-a-molti tra i libri e gli utenti. Questa relazione è necessaria per rappresentare il fatto che un libro può essere prestato a più utenti e che un utente può prendere in prestito più libri.

Per rendere la relazione più efficiente, possiamo aggiungere una tabella intermedia chiamata Prestiti. Questa tabella conterrà le informazioni relative a ogni prestito, come la data di inizio e di fine del prestito.

Esercizio 7

Un’azienda ha diversi dipendenti, ognuno dei quali ha un nome, un cognome, un codice fiscale, un indirizzo e-mail, una posizione, un salario e una data di assunzione. I dipendenti possono essere assegnati a uno o più progetti, che hanno un nome, una descrizione e una data di inizio.

Analisi preliminare

In questo caso, abbiamo una relazione molti-a-molti tra i dipendenti e i progetti. Questa relazione è necessaria per rappresentare il fatto che un dipendente può essere assegnato a più progetti e che un progetto può avere più dipendenti assegnati.

Per rendere la relazione più efficiente, possiamo aggiungere una tabella intermedia chiamata Assunzioni. Questa tabella conterrà le informazioni relative a ogni assegnazione, come la data di inizio e di fine dell’assegnazione.

Back to Blog

Related Posts

View All Posts »
Corso completo di Java: impara a programmare in Java

Corso completo di Java: impara a programmare in Java

Java è un linguaggio di programmazione ad alto livello, orientato agli oggetti, che è stato progettato per essere portabile e indipendente dalla piattaforma. È uno dei linguaggi di programmazione più popolari al mondo, utilizzato per sviluppare applicazioni desktop, applicazioni mobili, applicazioni web e applicazioni server.

GIT: guida completa per principianti

GIT: guida completa per principianti

Una guida completa per principianti su come utilizzare GIT per il controllo di versione del codice sorgente. Impara a creare repository, clonare progetti, creare branch, effettuare commit, gestire conflitti e collaborare con altri sviluppatori.

I container e docker | teoria ed esempio

I container e docker | teoria ed esempio

La containerizzazione è una tecnologia che consente di creare, distribuire e gestire applicazioni in maniera rapida e portatile. Essa si basa sulla concettualizzazione dei container, che rappresentano un'unità di esecuzione isolata e leggera che contiene tutto il necessario per eseguire un'applicazione, inclusi il codice, le librerie, le dipendenze e le variabili di ambiente.

La logica binaria: Fondamento dell'era digitale

La logica binaria: Fondamento dell'era digitale

In questo articolo, esploreremo la logica binaria, il suo ruolo cruciale nel funzionamento dei computer e come viene utilizzata per rappresentare informazioni complesse attraverso l'uso di due soli simboli.

Definizione di base di dati

Definizione di base di dati

Una base di dati è una raccolta di dati strutturati, organizzati in modo da consentire l'archiviazione, la gestione, la ricerca, l'aggiornamento e la manipolazione efficiente delle informazioni e progettati per essere usati in applicazioni differenti e da differenti utenti.