Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
1
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. 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. 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. 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. 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. 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. 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. 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. 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 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 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. 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 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 Microsoft Access
15
(A4) Realizzazione in Access
Per 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 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 Microsoft Access
17
Selezioniamo la directory Alla fine clic su Crea
Indichiamo il nome della nuova base dati, ad es. DBArticoli 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 Microsoft Access
19
Facendo clic su Nuovo compare…
Selezioniamo Visualizzazione Struttura Facciamo clic su OK Microsoft Access
20
Compare una finestra in cui inserire i campi e i loro tipi
Tipo Eventuale descrizione testuale Nome del campo Ulteriori proprietà del campo Microsoft Access
21
Esempio: campo IdArticolo
Nome del campo E’ un contatore Si autoincrementa Vogliamo indicizzarlo Non vogliamo duplicati Microsoft Access
22
Creazione struttura Creiamo i campi della tabella Articolo o Libro come indicato nella seguente diapositiva Microsoft Access
23
Per il campo Anno aggiungiamo questo vincolo (non accettiamo
Pubblicazioni anteriori al 1970 o posteriori al 2100) Microsoft Access
24
Andiamo su IdArticolo e facciamo clic sulla chiave (per indicare che
quella è la chiave primaria) Microsoft Access
25
Selezioniamo File/Chiudi, diamo OK e scegliamo il nome della tabella (Articolo o Libro)
Microsoft Access
26
Compare la tabella nuova (vuota)
Microsoft Access
27
Facendo clic su Apri si possono inserire dei dati nella tabella
Si può allargare il campo titolo portando il mouse sulla barretta e trascinando Microsoft Access
28
Il contatore si autoincrementa
Non viene accettato: l’anno non soddisfa i vincoli Microsoft Access
29
Mettiamo 2099 come anno (questo è valido)
Salviamo i dati con File/Chiudi Microsoft Access
30
Con Apri si modifica il contenuto
Con Struttura si modifica la struttura (campi e loro proprietà) 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 Microsoft Access
32
Per il campo Titolo Cambia dimensione (da 50 a 100)
Il campo è obbligatorio: cambia Richiesto in Sì 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 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. Microsoft Access
35
Dopo aver chiuso… …la struttura (con File/Chiudi) e aver confermato…
…compare la finestra: Microsoft Access
36
Confermiamo Siccome l’ultimo record contiene un anno (2099) non valido rispetto alle nuove regole, compare la finestra 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 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 ecc.) 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 articoli IdArticolo Titolo … 1 Cani e gatti 2 Canguri 3 L’Ornitorinco Nome … Anna Gialli Giorgio Bruni Giovanni Rossi Mario Bianchi 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)? 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 Giovanni Rossi 2 3 Giorgio Bruni 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 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. 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 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 molti Articolo o Libro - Argomento 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 Microsoft Access
47
Univoco: non è possibile che la stessa coppia compaia più volte
Nome dell’indice Campi dell’indice Univoco: non è possibile che la stessa coppia compaia più volte 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) 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 Microsoft Access
50
Dal menù Relazioni/Mostra tabella si apre una finestra di dialogo
Con il menù Strumenti/Relazioni si apre una finestra dal titolo “Relazioni” Dal menù Relazioni/Mostra tabella si apre una finestra di dialogo Microsoft Access
51
Dopo aver aggiunto tutte e tre le tabelle, facciamo clic su Chiudi
Microsoft Access
52
Riordiniamo le tabelle nella finestra, mettendo la tabella con la relazione in mezzo
Ora, facciamo clic su IdArticolo nella tabella Articolo o Libro e trasciniamolo su IdArticolo nella tabella RelArticoloAutore Microsoft Access
53
Quando rilasciamo il mouse si apre questa finestra
Facciamo clic su Crea Microsoft Access
54
Ecco come compaiono le relazioni dopo aver creato anche il secondo collegamento (quello relativo al campo Nome) 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 Microsoft Access
56
Queste associazioni sono corrette
Questa è sbagliata! “Marco Mirchi” non è presente nella tabella Autori Nonostante ciò, Access accetta l’inserimento dell’associazione 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… Microsoft Access
58
Si apre questa finestra
Facendo clic qui si forza l’integrità referenziale Facendo clic qui si richiede che aggiornamenti su una tabella si riflettano anche sull’altra Facendo clic qui si richiede che la cancellazione di un record elimini a cascata anche i record correlati 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 Microsoft Access
60
Ecco come compare l’insieme delle relazioni alla fine
Microsoft Access
61
Provate a vedere cosa succede se…
Create un record in RelArticoloAutore in cui uno dei due valori non sia presente nella tabella corrispondente Modificate un nome di un autore nella tabella Autore; cosa succede in RelArticoloAutore Cancellate un autore dalla tabella Autore NOTA: conviene che apriate contemporaneamente tutte le tabelle e proviate a fare le modifiche su ciascuna vedendo cosa succede nelle altre… Usate Finestra/Affianca orizzontalmente 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) 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 Microsoft Access
64
Microsoft Access
65
Popoliamo anche la tabella RelArticoloArgomento
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 Microsoft Access
67
Apriamo la struttura di RelArticoloArgomento
Andiamo su Argomento e facciamo clic su Ricerca: scegliamo Casella Combinata Microsoft Access
68
Modifichiamo “Larghezza colonne” a 10cm
Facciamo clic qui per scegliere da dove vanno attinti i dati Modifichiamo “Solo in elenco” a Sì (non vogliamo inserire valori che non siano nell’elenco) Microsoft Access
69
Scegliamo Argomento Microsoft Access
70
Proviamo ora a modificare il contenuto della tabella…
Microsoft Access
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.