Ripasso database

NOTA: questo post è molto vecchio, nel frattempo ho scritto un nuovo articolo con uno studio più approfondito sulla progettazione dei database.


Cosa è un database?
Un database è un i sieme organizzato di dati consultabile. Il DBMS è l'insieme di programmi che fanno da intermezzo tra l'utente e il database e consentono di creare, aggiornare e cancellare i dati.
L'utilizzo di un DBMS inoltre consente di risolvere problemi quali:

  • La ridondanza dei dati: dati riguardanti lo stessa cosa sono ripetuti più volte in tabelle diverse
  • L'inconsistenza: dati riguardanti la stessa cosa sono differenti in tabelle diverse
  • l'integrità: non è possibile cancellare dati che sono collegati in altre tabelle e la cui eliminazione causerebbe inconsistenza.
La modellazione dei dati
Per modellazione dei dati si intende una rappresentazione semplificata della realtà individuando gli elementi caratterizzanti e le relazione di una determinata soluzione ad un problema.

Per la modellazione dei dati di un database si usa lo schema E/R (entità/relazione) i cui elementi fondamentali sono:
  • entità: oggetti concreti o astratti che hanno senso anche presi singolarmente
  • relazioni: legami logici tra due o più entità
  • attributi: proprietà di attributi e relazioni
La molteplicità di un associazione è il numero di possibili istanze di una entità correlato al numero di istanze di un altra entità legata alla prima tramite una associazione.
I gradi possibili sono:
  • 1 - molti
  • molti - molti
  • 1 -1
Una volta definite le relazioni tra le entità è possibile costruire lo schema logico.

Regole di derivazione
Tramite le regole di derivazione è possibile passare dallo schema concettuale a quello logico. 
Le regole principali sono 7, le fondamentali sono:
  • una relazione 1-1 viene accorpata in unica tabella
  • una relazione 1-n viene divisa in due tabelle e nella parte "a molti" occorre inserire la chiave esterna
  • una relazione n-n viene scomposta in due tabelle più una che comprende le due chiavi delle tabelle
Operazioni relazionali
Sono operazioni che a partire da una o più relazioni creano una nuova relazione.
Le operazioni relazionali sono:

  • Selezione
  • Proiezione
  • Congiunzione 

Commenti