microsoft access 2 database introduzione un database può essere definito come un insieme di archivi...
TRANSCRIPT
![Page 1: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/1.jpg)
Microsoft Access
![Page 2: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/2.jpg)
Microsoft Access 2
DataBase introduzione
Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo argomento. Sono database la rubrica telefonica o l'archivio dei cittadini di un comune, o gli elementi per la gestione di un magazzino.
Un database efficiente e ben organizzato permette di individuare le informazioni che occorrono a un utente nel minor tempo possibile, grazie agli strumenti di ricerca e ordinamento che permettono di organizzare al meglio i dati.
![Page 3: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/3.jpg)
Microsoft Access 3
DataBase introduzione
In un database relazionale le informazioni vengono memorizzate in più tabelle in relazione fra loro, non in una sola grande tabella. Un database deve possedere alcune caratteristiche fondamentali. Deve essere condivisibile, cioè più utenti diversi devono avere l'opportunità di accedere ai dati comuni. I dati non devono essere ridondanti, cioè non devono presentare ripetizioni. Il database deve infine essere persistente, cioè le informazioni memorizzate devono avere un tempo di vita illimitato.
![Page 4: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/4.jpg)
Microsoft Access 4
DataBase introduzione
Il termine dato viene usato al posto di informazione tutte le volte che ci si riferisce ad una informazione rilevante per la gestione del problema specifico, problema che viene gestito con la creazione di una base di dati. Un dato è la registrazione di un qualsiasi oggetto descrivibile, identificabile e classificabile. Ad esempio, un libro è l'elemento base di una biblioteca, quindi le informazioni di ciascun libro costituiscono il dato fondamentale di un ipotetico database Biblioteca.
![Page 5: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/5.jpg)
Microsoft Access 5
DataBase introduzione
Per impostare e definire correttamente un nuovo database occorre analizzare tutti gli elementi della realtà da descrivere, identificando innanzitutto due tipi di oggetti: le entità del database, ossia le diverse strutture necessarie per la memorizzazione dei dati e le relazioni tra le entità del database.Supponiamo di voler costruire un database per la gestione dei dati di un Test Center ECDL in cui vengono svolti corsi finalizzati al conseguimento della Patente Europea del Computer. Dovremo innanzitutto identificare le entità che ci servono per memorizzare correttamente i dati, in questo caso di skill card, esami, corsi e alunni.
![Page 6: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/6.jpg)
Microsoft Access 6
DataBase introduzione
Per ogni entità (skill card, esami, corsi e alunni) deve essere creata una tabella, in cui vengono organizzati i dati in campi (colonne) e record (righe). Nei campi si memorizzano tipi di dati diversi (ad esempio il nome o un indirizzo); nei record si raccolgono tutte le informazioni su un elemento da registrare nel database. Ad esempio la tabella Corsi, tra l'altro, conterrà informazioni sul nome del corso, sulla data di inizio e sull'insegnante.
![Page 7: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/7.jpg)
Microsoft Access 7
DataBase introduzione
Nella figura viene illustrata la distinzione tra campi, record e tabelle. Ciascuna caratteristica di un'entità viene definita attributo e rappresenterà un campo nella tabella. Il campo Nome corso è un campo della tabella Corsi; l'insieme dei dati che avvalorano i campi della tabella costituisce un record e l'insieme dei record costituisce la tabella.
![Page 8: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/8.jpg)
Microsoft Access 8
DataBase introduzione
Le relazioni tra le tabelle sono rappresentate da frecce.
Ad esempio, la freccia tra la tabella Alunni e Corsi indica la relazione che lega ciascun alunno al corso che segue o che ha seguito, e la freccia tra la tabella Corsi ed Esami indica la relazione tra gli esami che sono stati sostenuti e i corsi seguiti.
![Page 9: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/9.jpg)
Microsoft Access 9
DataBase introduzione
Affinché i record di una tabella siano unici, è necessario definire la chiave primaria della tabella, ossia l'insieme dei campi che identificano ogni record in maniera univoca.
La definizione di una chiave primaria permette di avere record distinti, non duplicati, e di reperirli in maniera più veloce.
La scelta opportuna della chiave è una tra le regole più importanti da seguire per ottenere un database ben progettato.
![Page 10: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/10.jpg)
Microsoft Access 10
Costruzione di uno schema di base dati con Access Vogliamo costruire una base dati per la
gestione di un archivio bibliografico L’archivio deve contenere articoli e libri Si dovranno poter fare ricerche sulla
base di: titolo, autore, anno di pubblicazione, argomenti
Per ogni articolo/libro saranno presenti anche la casa editrice e un breve riassunto
![Page 11: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/11.jpg)
Microsoft Access 11
(A1) Fase di analisi: i requisiti Vogliamo tabelle relative ad
articoli o libri, della forma Titolo: …….. Autori: ………. Dati pubblicazione: (anno, editore, ecc.) Riassunto: ………
Vogliamo inserire ed aggiornare i dati Vogliamo fare delle ricerche per
titolo, autore, anno, argomento
![Page 12: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/12.jpg)
Microsoft Access 12
Nota Articoli e Libri sarebbero entità distinte,
ma nella nostra applicazione “ad uso personale” verranno identificate.Ci sarà cioè una sola entità di nome “Articoli o Libri” le cui istanze saranno articoli o libri.
Editore, rivista, … sarebbero entità, ma nella nostra applicazione saranno rappresentate in un unico attributo di testo dati pubblicazione.
![Page 13: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/13.jpg)
Microsoft Access 13
(A2) Fase di analisi: entità ed attributi La prima entità è: Articolo o Libro. Altre entità: autori, argomenti Possiamo considerare come attributi di
Articolo o Libro: titolo anno di pubblicazione altri dati di pubblicazione (editore, rivista,
ecc.) riassunto
![Page 14: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/14.jpg)
Microsoft Access 14
(A3) Fase di Analisi: relazioni fra entità
Un Articolo o Libro può avere più autori e un Autore aver scritto più articoli o libri: si ha una relazione molti-a-molti
Similmente si ha una relazione molti-a-molti fra Articolo o Libro e Argomenti
Per questo Autori ed Argomenti non possono essere trattati come attributi di Articolo o Libro
Si procederà con più tabelle
![Page 15: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/15.jpg)
Microsoft Access 15
(A4) Realizzazione in AccessPer la realizzazione in Access,
occorre: (A4.1) Creare le Tabelle (A4.2) Collegare le tabelle con
creazione delle chiavi secondarie e vincoli di integrità
(A4.3) Creare delle maschere per l’inserimento di dati da un elenco
![Page 16: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/16.jpg)
Microsoft Access 16
(A4.1) Creazione tabelle in Access All’apertura di Access, selezionare
Crea nuovo database (vuoto) (in seguito, la stessa operazione si potrà eseguire dal menù File/Nuovo)
Si apre la seguente maschera
![Page 17: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/17.jpg)
Microsoft Access 17
Selezioniamo la directory
Indichiamo il nome della nuova base dati, ad es. DBArticoli
Alla fine clicsu Crea
![Page 18: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/18.jpg)
Microsoft Access 18
Da qui si possono creare/modificare/visualizzare Tabelle, Query …
Selezioniamo il tipo di oggetti su cui operare Selezioniamo il tipo di operazione
Crea nuovo
![Page 19: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/19.jpg)
Microsoft Access 19
Facendo clic su Nuovo compare…
Selezioniamo Visualizzazione Struttura
Facciamo clic su OK
![Page 20: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/20.jpg)
Microsoft Access 20
Compare una finestra in cui inserire i campi e i loro tipi
Nome del campo
Tipo Eventuale descrizione testuale
Ulteriori proprietà del campo
![Page 21: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/21.jpg)
Microsoft Access 21
Esempio: campo IdArticolo
E’ un contatore
Si autoincrementa
Vogliamo indicizzarlo
Non vogliamo duplicati
Nome del campo
![Page 22: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/22.jpg)
Microsoft Access 22
Creazione struttura Creiamo i campi della tabella
Articolo o Libro come indicato nella seguente diapositiva
![Page 23: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/23.jpg)
Microsoft Access 23
Per il campo Anno aggiungiamo questo vincolo (non accettiamo Pubblicazioni anteriori al 1970 o posteriori al 2100)
![Page 24: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/24.jpg)
Microsoft Access 24
Andiamo su IdArticolo e facciamo clic sulla chiave (per indicare che quella è la chiave primaria)
![Page 25: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/25.jpg)
Microsoft Access 25
Selezioniamo File/Chiudi, diamo OK e scegliamo il nome della tabella (Articolo o Libro)
![Page 26: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/26.jpg)
Microsoft Access 26
Compare la tabella nuova (vuota)
![Page 27: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/27.jpg)
Microsoft Access 27
Facendo clic su Apri si possono inserire deidati nella tabella
Si può allargare il campo titolo portando il mouse sulla barretta e trascinando
![Page 28: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/28.jpg)
Microsoft Access 28
Il contatore si autoincrementaNon viene accettato: l’anno non soddisfa i vincoli
![Page 29: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/29.jpg)
Microsoft Access 29
Mettiamo 2099 come anno (questo è valido)
Salviamo i dati con File/Chiudi
![Page 30: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/30.jpg)
Microsoft Access 30
Con Apri si modifica il contenutoCon Struttura si modifica la struttura (campi e loro proprietà)
![Page 31: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/31.jpg)
Microsoft Access 31
Fino a questo punto… Ci siamo limitati a scegliere i nomi dei
campi e il loro tipo Abbiamo accettato le proprietà
standard, tranne nel caso dell’Anno (abbiamo inserito un vincolo)
Ora modifichiamo le proprietà dei campi…
…e inseriamo un vincolo più sofisticato per l’Anno
![Page 32: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/32.jpg)
Microsoft Access 32
Per il campo Titolo
Cambia dimensione (da 50 a 100)
Il campo è obbligatorio: cambia Richiesto in Sì
![Page 33: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/33.jpg)
Microsoft Access 33
Per il campo Anno
Tipo Intero (non Intero lungo)
Campo obbligatorio
Vogliamo cambiare la condizione di validità: cancelliamo quella vecchia e facciamo clic qui
![Page 34: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/34.jpg)
Microsoft Access 34
Anni validi: dopo il 1970 e minori o uguali all’anno corrente:Date() fornisce la data corrente, e Year(x) estrae l’anno da una data
La condizione si può inserire “manualmente”, o aiutandosi con il menùche fornisce operatori, funzioni ecc.
![Page 35: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/35.jpg)
Microsoft Access 35
Dopo aver chiuso… …la struttura (con File/Chiudi) e
aver confermato… …compare la finestra:
![Page 36: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/36.jpg)
Microsoft Access 36
Confermiamo Siccome l’ultimo record contiene
un anno (2099) non valido rispetto alle nuove regole, compare la finestra
![Page 37: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/37.jpg)
Microsoft Access 37
A questo punto… …apriamo la tabella e correggiamo
l’anno errato Provate a vedere cosa succede se
inserite un anno che non rispetta il nuovo vincolo
![Page 38: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/38.jpg)
Microsoft Access 38
Tabella Autore Creiamo la tabella Autore con i
seguenti campi Nome (di tipo Testo, chiave primaria) Contatto (di tipo Memo, non
obbligatorio, contenente dati come indirizzo di e-mail ecc.)
![Page 39: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/39.jpg)
Microsoft Access 39
(A3.1) Relazioni molti-a-molti La relazione essere autore di è una
relazione molti-a-molti perché: Un articolo può essere scritto da molti
autori Un autore può avere scritto molti
articoliIdArticolo
Titolo …
1 Cani e gatti
2 Canguri
3 L’Ornitorinco
… … …
Nome …
Anna Gialli
Giorgio Bruni
Giovanni Rossi
Mario Bianchi …
![Page 40: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/40.jpg)
Microsoft Access 40
Come si realizza… …una relazione molti-a-molti
usando solo relazioni 1-a-molti (che sono le uniche direttamente gestite dai DBMS relazionali)?
![Page 41: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/41.jpg)
Microsoft Access 41
IdArticolo
Titolo …
1 Cani e gatti
2 Canguri
3 L’Ornitorinco
… … …
Nome …
Anna Gialli
Giorgio Bruni
Giovanni Rossi
Mario Bianchi …
IdArticolo
Nome
1 Anna Gialli
1 Giovanni Rossi
2 Giovanni Rossi
3 Anna Gialli
3 Giorgio Bruni
![Page 42: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/42.jpg)
Microsoft Access 42
Relazioni molti-a-molti: regola generale
Si individuano le due tabelle da collegare: Articoli o Libri con chiave primaria IdArticolo Autori con chiave primaria Nome
La relazione molti-a-molti si codifica come tabella RelArticoloAutore con campi IdArticolo,Nome IdArticolo chiave esterna con integrità
referenziale, riferita alla chiave primaria di Articoli o Libri
Nome chiave esterna con integrità referenziale, riferita alla chiave primaria di Autori
(IdArticolo,Nome) chiave multicampo di RelArticoloAutore
![Page 43: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/43.jpg)
Microsoft Access 43
Chiavi multicampo Con una chiave multicampo
(campo1, …, campon)non si può avere più di un record con gli stessi valori di (campo1, …, campon)
Tornando al nostro esempio, la chiave multicampo (IdArticolo,Nome) evita ridondanze; ogni coppia (ident. articolo, nome autore) compare una sola volta.
![Page 44: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/44.jpg)
Microsoft Access 44
Tabella RelArticoloAutore Creiamo la tabella
RelArticoloAutore con i seguenti campi IdArticolo (di tipo Intero lungo) Nome (di tipo Testo)
Con la coppia (IdArticolo,Nome) come chiave
![Page 45: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/45.jpg)
Microsoft Access 45
Nota Abbiamo usato il Nome come chiave
primaria della tabella Autori; quindi non sono ammesse omonimie (si useranno le iniziali ed altri segni distintivi). Una scelta migliore (che non faremo per brevità) potrebbe essere quella di usare una diversa chiave primaria IdAutore.
In modo simile a quello visto per la relazione molti a molti Articolo o Libro - Autore
Si può realizzare la relazione molti a moltiArticolo o Libro - Argomento
![Page 46: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/46.jpg)
Microsoft Access 46
Per realizzare… …una chiave multicampo, aprite la
tabella RelArticoloAutore (facendo clic su Struttura)
Scegliamo dal menù Visualizza/Indici
Modifichiamo gli indici come segue
![Page 47: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/47.jpg)
Microsoft Access 47
Nome dell’indiceCampi dell’indice
Univoco: non è possibile che la stessa coppia compaia più volte
![Page 48: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/48.jpg)
Microsoft Access 48
Dopo aver creato l’indice… …possiamo chiudere la finestra
relativa alla tabella RelArticoloAutore
Access vi consiglierà di creare una chiave primaria, ma voi scegliete No (potrete sempre inserire una chiave primaria in seguito se ne avrete bisogno)
![Page 49: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/49.jpg)
Microsoft Access 49
Creazione della relazione La tabella RelArticoloAutore
realizza la relazione essere autore di
Ora dobbiamo indicare che i due campi della tabella RelArticoloAutore rappresentano dei “collegamenti” con le tabelle Articolo o Libro e Autore
![Page 50: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/50.jpg)
Microsoft Access 50
Con il menù Strumenti/Relazioni si apre una finestra dal titolo “Relazioni”
Dal menù Relazioni/Mostra tabella si apre una finestra di dialogo
![Page 51: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/51.jpg)
Microsoft Access 51
Dopo aver aggiunto tutte e tre le tabelle, facciamo clic su Chiudi
![Page 52: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/52.jpg)
Microsoft Access 52
Riordiniamo le tabelle nella finestra, mettendo latabella con la relazione in mezzo
Ora, facciamo clic su IdArticolo nella tabella Articolo o Libro e trasciniamolo su IdArticolonella tabella RelArticoloAutore
![Page 53: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/53.jpg)
Microsoft Access 53
Quando rilasciamo il mouse si apre questa finestra
Facciamo clic su Crea
![Page 54: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/54.jpg)
Microsoft Access 54
Ecco come compaiono le relazioni dopo aver creato ancheil secondo collegamento (quello relativo al campo Nome)
![Page 55: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/55.jpg)
Microsoft Access 55
Dopo aver… …chiuso la finestra delle relazioni,
proviamo a inserire nella tabella RelArticoloAutore gli autori dei vari articoli
Per farlo dobbiamo selezionare la tabella e fare clic su Apri
![Page 56: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/56.jpg)
Microsoft Access 56
Queste associazioni sono corrette
Questa è sbagliata! “Marco Mirchi” non è presente nella tabella Autori
Nonostante ciò, Access accetta l’inserimento dell’associazione
![Page 57: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/57.jpg)
Microsoft Access 57
(A4.2) Chiavi secondarie e vincoli di integrità in Access Il problema è che non abbiamo
forzato il controllo di integrità relazionale
Per farlo, riapriamo la finestra delle relazioni (menù Strumenti/Relazioni) e facciamo doppio clic su ciascuna relazione…
![Page 58: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/58.jpg)
Microsoft Access 58
Si apre questa finestra
Facendo clic qui si forza l’integrità referenziale
Facendo clic qui si richiedeche aggiornamenti su una tabella si riflettano anchesull’altra
Facendo clic qui si richiede che la cancellazione di un recordelimini a cascata anche i record correlati
![Page 59: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/59.jpg)
Microsoft Access 59
Provate a fare la stessa cosa… …anche per l’altra tabella Cosa succede? Perché? Eliminate il record sbagliato dalla
tabella RelArticoloAutore e procedete di nuovo ad applicare l’integrità referenziale
![Page 60: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/60.jpg)
Microsoft Access 60
Ecco come compare l’insieme delle relazioni alla fine
![Page 61: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/61.jpg)
Microsoft Access 61
Provate a vedere cosa succede se…
1. Create un record in RelArticoloAutore in cui uno dei due valori non sia presente nella tabella corrispondente
2. Modificate un nome di un autore nella tabella Autore; cosa succede in RelArticoloAutore
3. Cancellate un autore dalla tabella AutoreNOTA: conviene che apriate contemporaneamente tutte le tabelle e proviate a farele modifiche su ciascuna vedendo cosa succede nelle altre… Usate Finestra/Affianca orizzontalmente
![Page 62: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/62.jpg)
Microsoft Access 62
Tabella Argomento Creiamo la tabella Argomento con
un solo campo, di nome Argomento, di tipo Testo (chiave primaria, duplicati non ammessi, campo richiesto)
![Page 63: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/63.jpg)
Microsoft Access 63
Tabella RelArticoloArgomento Creiamo la tabella RelArticoloArgomento
con i seguenti campi IdArticolo (di tipo Intero lungo) Argomento (di tipo Testo)
Con la coppia (IdArticolo,Argomento) come chiave multicampo (ricordate: dovete creare un indice!)
Creiamo una relazione con vincoli di integrità come evidenziato nel seguente diagramma
![Page 64: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/64.jpg)
Microsoft Access 64
![Page 65: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/65.jpg)
Microsoft Access 65
Popoliamo anche la tabella RelArticoloArgomento
![Page 66: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/66.jpg)
Microsoft Access 66
(A5.3) Caselle combinate Inserendo coppie di valori in
RelArticoloArgomento vi sarete resi conto della difficoltà di inserire argomenti esistenti
Vorremmo che, quando dobbiamo inserire un argomento, comparisse una “tendina” contenente i valori possibili
Ciò è possibile usando le caselle combinate
![Page 67: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/67.jpg)
Microsoft Access 67
Apriamo la struttura di RelArticoloArgomento
Andiamo su Argomento e facciamo clic su Ricerca: scegliamo Casella Combinata
![Page 68: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/68.jpg)
Microsoft Access 68
Modifichiamo “Larghezza colonne” a 10cm
Modifichiamo “Solo in elenco” a Sì (non vogliamo inserire valori che non siano nell’elenco)
Facciamo clic qui per scegliere da dove vannoattinti i dati
![Page 69: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/69.jpg)
Microsoft Access 69
Scegliamo Argomento
![Page 70: Microsoft Access 2 DataBase introduzione Un database può essere definito come un insieme di archivi contenenti dati omogenei che riguardano un certo](https://reader035.vdocuments.pub/reader035/viewer/2022062418/5542eb4b497959361e8b87b6/html5/thumbnails/70.jpg)
Microsoft Access 70
Proviamo ora a modificare il contenuto della tabella…