DATABASE
A cura di Massimiliano Buschi
Introduzione
Con Microsoft Access:
• Immissione dati e interrogazione
• Interfaccia per applicazioni e report
Ma prima bisogna definire alcune conoscenze di
base sui database.
Database
Cos’è un database?
E’ in archivio elettronico di dati strutturati
dotato di un interfaccia per l’archiviazione dei
dati e la manipolazione degli stessi
Database
Esempi:
• Rubrica del telefono
• Inventario di un magazzino
• Le informazioni a disposizione delle segreterie
studenti relative agli iscritti ai vari corsi di
laurea
• …
Database
Cos’hanno in comune?
Sono costituiti da insiemi di dati, omogenei a
gruppi, e organizzati secondo uno schema ben
preciso
Tabelle
Tabella: base di un database
Le tabelle, collegate tra loro, costituiscono
l’organizzazione di un database.
Nelle tabelle le colonne rappresentano la
categoria di un dato e sono chiamati campi.
Ogni riga rappresenta l’insieme di dati riferiti ad
un unico soggetto e sono chiamate record.
Tabelle
Ogni campo viene generato con lo scopo di
contenere uno specifico tipo di dato.
Pertanto dovrà essere riconoscibile tramite un
nome, l’etichetta, e dovrà essere predisposto
ad accogliere numeri piuttosto che parole.
Chiave primaria
In una tabella ogni riga rappresenta un record; è
opportuno che ogni record sia distinguibile
dagli altri; con il valore di uno o più campi
combinati è possibile identificare
univocamente ogni record.
Tale valore, ovvero il campo/campi che lo
compongono, prende il nome di chiave
primaria. Il database non lo sa; bisogna
specificarlo.
Chiave primaria
Una chiave primaria non può avere duplicati
nella tabella.
Se non c’è o non è semplice identificare la chiave
primaria si può aggiungere un campo
numerico ad-hoc.
Access la aggiunge automaticamente se non ne
viene specificata una.
Indice
Quando si crea una chiave viene creato
automaticamente un indici.
Un indice è una meta informazione nel database
che permette di velocizzare le ricerche sulla
chiave indicizzata.
Senza indice il database durante una ricerca passa
in rassegna tutti i campi sequenzialmente finché
non trova quello che cerca. Con un indice il db
riesce ad accedere subito al dato.
Database relazionale
Database relazionale
• E’ il più diffuso perché flessibile e facile da
usare
• E’ costituito da un insieme di tabelle correlate
fra loro attraverso relazioni tra campi
• Le relazioni consentono l’aggregazione di dati
in record logici provenienti da tabelle
differenti
Database relazionale
• Lo scopo è di evitare di inserire più volte gli
stessi dati
Esempio:
Studenti <--> Corsi di laurea
Elenco del telefono <--> elenco delle telefonate
Relazioni
Esistono 3 tipi di relazioni fra tabelle.
RELAZIONE UNO A UNO: ad un record di una
tabella corrisponde al massimo un record
dell’altra tabella. Non c’è ridondanza di dati
perché la relazione è biunivoca.
Relazioni
RELAZIONE UNO A MOLTI: ad un record di una
tabella corrispondono più record di un’altra
tabella. Non è vero il contrario.
RELAZIONE MOLTI A MOLTI: ad un record di una
tabella corrispondono più record di un’altra
tabella ed è vero il contrario.
Relazioni
La relazione molti a molti non è gestibile se non
creando una tabella apposta, scindendola in
pratica in 2 relazioni uno a molti, ciascuna con
le 2 tabelle iniziali.
E-R
Questa modalità di affrontare le relazioni è un
metodo di analisi della struttura dei database
definito mediante la definizione delle schema
E-R (entità-relazione) e sua normalizzazione e
traduzione in un insieme di tabelle.
Integrità referenziale
In un database relazionale è fondamentale che
venga mantenuta l’integrità delle relazioni.
Questa integrità è chiamata integrità referenziale, e
il suo scopo è evitare che esistano record il cui
elemento di relazione non è presente nella
tabella in relazione.
Esempio: studenti <--> corsi di laurea
non devono esistere studenti iscritti ad un corso
di laurea che non compaiono nella tabella
studenti. E’ possibile attivare un controllo
affinché l’integrità referenziale venga mantenuta.
Integrità referenziale
Vantaggio  dati più sicuri e coerenti
Svantaggio  complessità e vincoli da tenere
presente