Concetti Chiave
- La progettazione delle basi dati segue una metodologia in tre fasi: modello concettuale, logico e fisico, separando il "cosa" dal "come".
- Il modello concettuale rappresenta una descrizione formale della realtà d'interesse, indipendente dal DBMS, e si concretizza nello schema concettuale.
- Il modello logico traduce lo schema concettuale nel formato supportato dal DBMS, risultando nello schema logico.
- Il modello fisico organizza i file secondo lo schema logico, tenendo conto delle specifiche del DBMS scelto.
- Le query sono strumenti per manipolare i dati nei database, con diversi tipi per selezione, aggiornamento, eliminazione, creazione tabella e altro, spesso utilizzando SQL o QBE.
Premessa teorica
Nell'ambito delle Basi Dati si è consolidata una metodologia di progettazione che si fonda sul principio di separare in maniera netta le decisioni relative a cosa? rappresentare in una base dati (prima fase) da quelle relative a come farlo? (seconda e terza fase).
Le tre fasi sono:
1. Modello concettuale: il suo scopo è quello di rappresentare la realtà di interesse in termini di una descrizione formale e completa, indipendentemente dai criteri di rappresentazione utilizzati nei DBMS. Il prodotto in questa fase viene chiamato schema concettuale e fa riferimento ad un modello concettuale di dati.2. Modello logico: consiste nella traduzione dallo schema concettuale definito nella fase precedente, nel modello di rappresentazione dei dati adottato dal DBMS a disposizione. Il prodotto di questa fase viene chiamato schema logico e fa riferimento ad un modello logico di dati.
3. Modello fisico: in questa fase lo schema logico viene completato con l'organizzazione dei file. Il prodotto in questa fase viene chiamato schema fisico e fa riferimento ad un modello fisico dei dati. Tale modello dipende dallo specifico DBMS scelto.
Il più diffuso modello concettuale dei dati è il modello Entità -Relazione. Il diagramma entità -relazioni consente di rappresentare graficamente la struttura del database.
Prima di entrare in merito alle richieste specifiche degli esercizi è necessario definire concetti fondamentali quali tipo di entità , tipo di attributo, tipo di relazione e cardinalità :
Tipo di entità è una classe di oggetti che possiedono caratteristiche comuni e che hanno una propria esistenza autonoma. Il tipo di entità si rappresenta con un rettangolo;
Attributo è uno specifica caratteristica appartenente a quella entità ;
Tipo di relazione: rappresenta un legame logico tra entità , rilevante nella realtà che si sta considerando e viene rappresentato con un rombo.
Cardinalità delle relazioni: per cardinalità si intende una coppia di valori associati ad ogni entità che partecipa ad una relazione, che specificano il numero minimo e massimo di istanze dell'associazione a cui un'istanza dell'entità può partecipare.
Esistono tre tipi di cardinalità :
Relazione 1:1: si ha relazione uno a uno tra due entità quando ad ogni istanza della prima entità è associato un'unica istanza della seconda entità ;
Relazione 1:N: si ha una relazione uno a molti tra due entità quando ad ogni istanza della prima entità può essere associato a molte istanze della seconda entità , mentre ad ogni istanza della seconda entità può essere associato ad una sola istanza della prima entità ;
Reazione N:M: si realizza una relazione molti a molti quando ad una singola istanza della prima entità è legato a molte istanze della seconda entità e viceversa.
Una Query è una domanda posta al database per estrarre e manipolare dei dati. È un insieme di istruzioni per trovare informazioni in una o più tabelle tra loro correlate. Le istruzioni possono prevedere condizioni per l'estrazione dei dati o definire un ordine di visualizzazione.
Il linguaggio più comunemente usato per formulare query è SQL, tuttavia Access utilizza l'interfaccia QBE (Query by Example) che rappresenta graficamente le interrogazioni. Alla base di una query ci sono le relazioni tra tabelle.
Esistono differenti tipi di query a seconda del tipo di estrazione che si vuole fare:
Query di selezione. Estrae dati da una o più tabelle e li rende disponibili tramite fogli di lavoro, maschere, report, pagine HTML. I dati estratti sono modificabili. Si possono effettuare calcoli e raggruppamenti.
Query di aggiornamento. Consente la modifica di uno o più campi di una o più tabelle per interi gruppi di record.
Query di eliminazione.Consente l'eliminazione di un gruppo di record da una o più tabelle.
Query di creazione tabella. I record vengono immessi in una nuova tabella.
Query di accomodamento. Aggiunge un gruppo di record alla fine di una o più tabelle.
Query a campi incrociati. Aggrega i dati mettendo in relazione i campi di una tabella.
Query parametrica. Chiede la specificazione dei campi di ricerca.
Domande da interrogazione
- Qual è la metodologia di progettazione delle basi dati descritta nel testo?
- Cosa rappresenta il modello concettuale in una base dati?
- Qual è il modello concettuale dei dati più diffuso e come viene rappresentato?
- Quali sono i tipi di cardinalità delle relazioni menzionati nel testo?
- Quali sono i diversi tipi di query descritti nel testo?
La metodologia si basa sulla separazione delle decisioni su "cosa" rappresentare in una base dati e "come farlo", articolata in tre fasi: modello concettuale, modello logico e modello fisico.
Il modello concettuale rappresenta la realtà di interesse in termini di una descrizione formale e completa, indipendentemente dai criteri di rappresentazione utilizzati nei DBMS.
Il modello concettuale dei dati più diffuso è il modello Entità-Relazione, rappresentato graficamente tramite un diagramma entità-relazioni.
I tipi di cardinalità delle relazioni sono: relazione 1:1, relazione 1:N, e relazione N:M.
I tipi di query includono: query di selezione, query di aggiornamento, query di eliminazione, query di creazione tabella, query di accomodamento, query a campi incrociati, e query parametrica.