Questa serie di lezioni hanno lo scopo di spiegare come funziona
Microsoft Access. Si partirà dagli argomenti di base per poi arrivare
a trattare anche aspetti più complessi, in modo da cercare di soddisfare
sia gli utenti alle prime armi che quelli con un po più di
esperienza.
Concetti di base
Prima di iniziare a vedere il funzionamento di Access è bene
parlare un po dei database in generale. Come si sa un database
è uno strumento che permette di immagazzinare dati e di richiamarli
in maniera organizzata in modo tale che questi dati forniscano delle
informazioni. In particolare Access fa parte della categoria dei
data base relazionali.
Lidea di base che sta dietro al modello relazionale è che
un database consiste in una serie di tabelle che possono essere
manipolate usando delle operazioni che restituiscono altre tabelle.
Più semplicemente possiamo dire che le caratteristiche essenziali
di un database relazionale sono le seguenti:
1) tutti i dati vengono registrati in tabelle in cui le colonne
sono i campi del database e le righe sono i record. Esempio: una
tabella che contiene le generalità dei clienti di unazienda
avrà i campi (colonne della tabella) nome, cognome, indirizzo, ecc.
I record (righe della tabella) saranno costituiti dallelenco
vero e proprio dei clienti.
2) ciascun record nella tabella deve essere unico; per garantire
lunicità del record nella tabella viene individuato un campo
che avrà un valore che non potrà essere ripetuto. Questo campo costituirà
la chiave primaria della tabella. Riprendiamo il nostro
esempio di tabella con le generalità dei clienti: ci serve un campo
che identifichi univocamente il Sig. Mario Rossi. In questo caso
il campo che fa al caso nostro può essere quello del codice fiscale,
infatti come noto il codice fiscale è diverso per ogni persona (almeno
in teoria). Non si può scegliere il campo nome perché ci potrebbero
essere più clienti che, ad esempio, si chiamano Mario. Se non cè
un campo idoneo a funzionare come chiave primaria, se ne crea uno
apposito. Torneremo più avanti sui criteri di scelta della chiave
primaria.
3) I dati di un database sono suddivisi in parti più piccole logicamente
omogenee. Questo significa che ogni tabella dovrebbe contenere una
raccolta di un certo tipo di cose. Queste cose (o entità)
possono essere oggetti del mondo reale o eventi. Ogni cosa dovrebbe
avere la sua tabella. Ritorniamo al nostro esempio: un database
delle vendite di prodotti a dei clienti conterrà una tabella che
identificherà i clienti (1° cosa), una che identificherà i prodotti
(2° cosa), unaltra che conterrà i dati delle vendite (3° cosa)
e così via. Le regole che stanno alla base della suddivisione dei
dati sono chiamate regole di normalizzazione; andremo ad approfondirle
più avanti.
4) Il contenuto di una tabella può essere collegato con quello di
altre tabelle, in modo tale che lestrazione dei dati ci fornisca
la serie completa di informazioni che stiamo cercando. I legami
tra tabelle si chiamano relazioni.
Le relazioni
Continuiamo a parlare di cose noiose. Purtroppo però questo
passo è fondamentale, visto che la prima fase per realizzare un
database è la progettazione: un database progettato bene ci evita
di dover rifare lo stesso lavoro più volte. E non è possibile progettare
un database senza conoscere alcuni concetti di base.
Come già detto le relazioni sono i legami fra tabelle. Come si fa
a creare una relazione? Semplice: si inserisce in una tabella un
campo che fa riferimento alla chiave primaria di unaltra tabella.
Esempio: abbiamo una tabella che contiene i nomi di registi con
chiave primaria NumRegista e una tabella che contiene
titoli di film; volendo legare la tabella registi a quella film
includeremo in questultima una colonna che chiameremo ad es.
registi dove metteremo gli stessi valori del campo NumRegista.
Esistono tre tipi di relazioni:
- relazioni 1 a 1
- relazioni 1 a molti
- relazioni molti a molti
Le relazioni 1 a 1 si hanno quando ogni riga della prima
tabella corrisponde una sola riga della seconda tabella. Questo
tipo di relazione è spesso creata per superare una limitazione del
software più che per riprodurre una relazione del mondo reale. Si
può usare infatti per superare il limite delle 255 colonne massime
per tabella, oppure quando si deve dividere una tabella in due o
più per motivi di sicurezza o per migliorare le prestazioni. Ad
esempio un database di un ospedale può avere una tabella contenente
i dati dei pazienti e unaltra con i dati relativi allo stato
di salute; in questo modo si possono impostare maggiori restrizioni
alla visibilità della tabella contenente dati più riservati.
Le relazioni 1 a molti si hanno quando per ogni riga nella
prima tabella ce ne possono essere zero, una o molte nella seconda
tabella, ma per ogni riga della seconda tabella cè esattamente
una sola riga nella prima tabella. Esempio: la tabella studenti
universitari e la tabella scuola di provenienza è legata da una
relazioni di 1 a molti; infatti uno studente proviene da una sola
scuola, ma da una scuola possono provenire più studenti.
Le relazioni molti a molti si hanno quando per ogni riga della prima tabella ci possono essere molte righe della seconda tabella e viceversa. Esempio: la tabella film e la tabella attori sono legate da una relazione da molti a molti, perché in un film ci sono più attori e un attore (normalmente) ha fatto più di un film. In Access, come in altri database, le relazioni molti a molti non possono essere fatte direttamente; si ricorre al trucco di dividerle in due relazioni 1 a molti mettendoci una tabella nel mezzo che avrà una relazione 1 a molti con le altre due tabelle. Nel nostro esempio apriremo una tabella chiamata relFilmAttori i cui due campi saranno la chiave primaria della tabella film e la chiave primaria della tabella attori.
Torna all'indice Generale del corso di Corso di Microsoft Access di Software Planet