View
212
Download
0
Category
Preview:
Citation preview
© mondopcnet.com Access - Basi di Dati - Lezione 1 2
ARGOMENTILezione 3 Relazioni tra tabelle
Perché creare le relazioni Tipi di relazioni Come creare le relazioni Integrità referenziale Esempio 1 Esempio 2
Maschere Cosa sono Creazione guidata maschera Note Esercizio 3 Esercizio 4
© mondopcnet.com Access - Basi di Dati - Lezione 1 3
Relazioni tra tabellePerché creare le relazioni
Come detto precedentemente, delle caratteristiche importanti di un DB relazionale sono quelle di evitare ridondanze di dati e di semplificare la gestione; ciò viene fatto mediante l’utilizzo di relazioni, che permettono di correlare le informazioni tra le tabelle.Un esempio sono le tabelle prodotti – Fornitori viste nelle precedenti lezioni, in cui le due tabelle, per essere in relazione, devono avere un campo con le stesse caratteristiche; per esempio nella tabella Fornitori, id_fornitori è di tipo contatore (ossia numerico) ed è messo in relazione con il campo fornitore della tabella prodotti che dovrà essere di tipo numerico – intero lungo.In questo modo si crea una relazione tra il fornitore e i suoi prodotto.Nota: se id_fornitore (della tabella Fornitori) fosse stato di tipo testo – dim 50, anche fornitore (della tab. prodotti) doveva essere dello stesso tipo.
Id_fornitoreRagione sociale
Indirizzo
Telefono
fax
Fornitori prodottiId_prodottodescrizione
tipo
fornitore
© mondopcnet.com Access - Basi di Dati - Lezione 1 4
In generale esistono 3 tipi di relazioni tra le tabelle:Relazione 1 a 1Relazione 1 a moltiRelazione molti a moltiSupponiamo di avere due tabelle: tabella 1 e tabella 2• La relazione 1 a 1 significa che ad un record della tabella 1 è associatouno ed un solo record della tabella 2 e un record della tabella 2 è associatoad uno e un solo record della tabella 1.• La relazione 1 a molti significa che ad un record della tabella 1 è associata uno o più record della tabella 2 ma non il viceversa (alla tabella 1 è associato unsolo record della tabella 1)• La relazione molti a molti significa che ad un record della tabella 1 sono
associati più record della tabella 2 ed è valido anche per il viceversa
Relazioni tra tabelleTipi di relazioni
© mondopcnet.com Access - Basi di Dati - Lezione 1 5
Relazioni tra tabelle Tipi di relazioni - esempi
Id_fornitoreRagione sociale
Indirizzo
Telefono
fax
Fornitori prodottiId_prodottodescrizione
tipo
fornitore
1
∞
Relazione 1 a molti
Attori DettagliAttoriAttorehobby
Indirizzo
1 1Id_AttoreNome
Cognome
Datadinascita
eta
Relazione 1 a 1
© mondopcnet.com Access - Basi di Dati - Lezione 1 6
Relazioni tra tabelle Come creare le relazioni
Cliccare sull’icona mostrataOppure
Dal menu Strumenti ->
Relazioni
© mondopcnet.com Access - Basi di Dati - Lezione 1 7
Relazioni tra tabelle Come creare le relazioni (1)
Uscirà questa schermata,nel caso non dovesse uscirecliccare il tasto destro del mouse uscirà un menu a tendina con scritto Mostra tabelle
Selezionare la tabella a cui si vuole applicare una relazione e cliccare su Aggiungi
© mondopcnet.com Access - Basi di Dati - Lezione 1 8
Relazioni tra tabelle Come creare le relazioni (2)
Tenendo premuto il tasto sinistro del mouse dalla tabella fornitori (campo id_fornitore) a quella prodotti (campo id_fornitori dello stesso tipo del campo di partenza ma non necessariamente dello stesso nome) comparirà la finestra modifica relazioni con la quale è possibile creare una relazione;
Access identifica automaticamente il
tipo di relazione
Campi tra i quali si stabilisce la relazione
© mondopcnet.com Access - Basi di Dati - Lezione 1 9
Relazioni tra tabelle Come creare le relazioni (3)
In questo modo si crea la relazione tra le due tabelle.(in questo caso uno a molti)
© mondopcnet.com Access - Basi di Dati - Lezione 1 10
Integrità referenziale: un insieme di regole tramite le quali si impedisce l’eliminazione o la modifica dei record tra tabelle correlate in modo non corretto o non desiderato.
Esistono 2 opzioni in Access che si possono applicare con l’integrità referenziale:• Aggiorna campi correlati a catena• Elimina campi correlati a catena
Con Aggiorna si applicano le modifiche effettuate su un campo chiave a tutte le tabelle correlate.Con Elimina si eliminano tutti i record appartenenti a tabelle diverse (ma
correlate)quando si elimina un record.
Relazioni tra tabelleL’integrità referenziale
© mondopcnet.com Access - Basi di Dati - Lezione 1 11
Relazioni tra tabelleL’integrità referenziale
Selezionando si applica l’integrità referenziale tra
le due tabelle
© mondopcnet.com Access - Basi di Dati - Lezione 1 12
Esempio 1 Crea il database esercizio1.mdb e salvalo nella cartella
documenti ->(cognome); Utilizzando la creazione in visualizza struttura tabella crea le tabelle
proprietari con i seguenti campi: idproprietario (contatore), nome, cognome (indicizzato duplicati ammessi), telefono, datanascita (formato data breve) con idproprietario chiave primaria
Appartamenti con i seguenti campi: idappartamento(contatore), citta, indirizzo, numerovani, note (di tipo memo), proprietario (tipo numerico) con idappartamento chiaveprimaria
Definire una relazione tra idproprietario della tabella proprietari e proprietario della tabella fornitore, applicare anche un’integrità referenziale con Aggiorna
Inserire almeno 5 proprietari con almeno due appartamenti associati
© mondopcnet.com Access - Basi di Dati - Lezione 1 13
Esempio 2
Realizzare le seguenti tabelle con la seguente relazione ed inserire almeno 5 attori (attenzione i campi in rosso devono essere obbligatori)
Attori DettagliAttoriAttore(testo)Hobby(indicizzato duplicati non ammessi)
Indirizzo
Famoso (si/no)
1 1Id_Attore (testo)Nome (testo 40)
Cognome (testo 60)
Datadinascita
Eta (intero lungo)
© mondopcnet.com Access - Basi di Dati - Lezione 1 14
Esempio 3 Applica l’integrità referenziale alla relazione fra le tabelle
dell’esercizio precedente.
© mondopcnet.com Access - Basi di Dati - Lezione 1 15
Mascherecosa sono
Le maschere sono utilizzate per creare un’interfaccia grafica verso tabelle, in modo da favorire l’immissione e la modifica dei dati da parte di un utente anche poco esperto.
Esistono 2 metodi per creare una maschera: mediante creazione guidata e tramite la visualizzazione struttura.
© mondopcnet.com Access - Basi di Dati - Lezione 1 16
Mascherecreazione guidata (1)
1 – cliccare su Maschere
2 – cliccare su Nuovo oppure su Creazione guidata
3 – uscirà la procedura guidata
maschera
4 – selezionare la tabella di interesse
5 – compariranno i campi della tabella selezionata al precedente passaggio.Selezionare i campi e con i tasto > spostarli nell’altro riquadro (per spostarli tutti cliccare su >>)Poi cliccare su Avanti.
© mondopcnet.com Access - Basi di Dati - Lezione 1 17
Mascherecreazione guidata (2)
6 – cliccare sul tipo di struttura di
interesse
Nota:Esistono le seguenti strutture:A colonne: viene visualizzato un record per volta su una riga distinta con un'etichetta a sinistra. Tabulare: vengono visualizzati più record contemporaneamente , con le etichette visualizzate una sola volta nella parte superiore della maschera. Foglio dati: è una visualizzazione simile ai fogli dati delle tabelle. I nomi di campo vengono visualizzati nella parte superiore di ogni colonna. Tabella pivot e Grafico pivot le tralasciamo.Le tabelle pivot sono strumenti di analisi dei dati.
7 – si seleziona il layout desiderato
© mondopcnet.com Access - Basi di Dati - Lezione 1 18
Mascherecreazione guidata (3)
8 – si inserisce il nome per la maschere
9 – si decide se visualizzarlo
direttamente in visualizza struttura
per le modifiche oppure la si apre direttamente per l’inserimento o la
modifica delle informazioni
© mondopcnet.com Access - Basi di Dati - Lezione 1 19
Mascherecreazione guidata (4)
10 – La maschera è stata creata!
Note:Può essere modificato lo stile della maschera passando in visualizza struttura e cliccando sul tasto indicato a fianco.
Il funzionamento è uguale a quanto spiegato nella scorsa lezione
© mondopcnet.com Access - Basi di Dati - Lezione 1 20
Note: Tramite questo tasto è possibile annullare le
operazioni fatte di recente Se si elimina un record dal DB non è possibile
effettuare l’annullamento con questo tasto Per eliminare una maschera si va nell’oggetto
maschera, si seleziona e si clicca sul tasto elimina (quello con la x)
Per modificare la struttura di una maschera, eliminare campi nella visualizzazione o altro, bisogna passare in visualizza struttura della maschera.
© mondopcnet.com Access - Basi di Dati - Lezione 1 21
Esercizio 3 Crea il database lezione3.mdb e salvalo nella cartella documenti ->(cognome); Utilizzando la creazione guidata tabella crea le tabelle
Fornitori con i seguenti campi: idfornitore(contatore), nomefornitore(indicizzato duplicati non ammessi), contatto, indirizzo con idfornitore chiave primaria
prodotti con i seguenti campi: idprodotto, nomeprodotto(obbligatorio) , descrizioneprodotto, idfornitore(numerico) con idprodotto chiave primaria
Creare una maschera in modo guidato, per inserire i fornitori ( a colonne, a tessuto) Crea una maschera in modo guidato, per inserire i prodotti ( a colonne, a tessuto) Provare ad inserire almeno 6 fornitori Provare la funzione di navigazione tra i record
© mondopcnet.com Access - Basi di Dati - Lezione 1 22
Esercizio 4
Utilizzando il database dell’esercizio 3:
Definire una relazione tra idfornitore della tabella prodotti e idfornitore della tabella fornitore, applicare anche un’integrità referenziale
Creare una maschera in modo guidato, per inserire i fornitori e i prodotti( a colonne, a tessuto)
Provare ad inserire almeno 10 fornitori Provare la funzione di navigazione tra i record
© mondopcnet.com Access - Basi di Dati - Lezione 1 23
Conclusioni http://www.ecdl.it/ecdl_core/pdf/syllabus/modulo5_v4.pdf(syllabus: contiene gli argomenti da conoscere) www.mondopcnet.com
Forum -> ACCESS Informazioni generali Chiarimenti su quanto spiegato Soluzione esercizi Proposta nuovi esercizi
È consentito il solo uso personale di queste pagine ed è fatto divieto di pubblicare queste pagine su altri siti WEB o server di qualunque tipo, essendo materiale di produzione dello staff di www.mondopcnet.com. Siccome nessuno è perfetto e gli errori umani sono sempre possibili, vi preghiamo di segnalarci eventuali incongruenze.Pertanto, si declina ogni responsabilità dalle conseguenze derivanti dall’uso di eventuali informazioni errate o incomplete contenute in queste pagine.I marchi citati in mondopcnet.com, per lo sviluppo delle lezioni e degli esercizi, sono esclusiva dei rispettivi proprietari. Tali marchi sono citati in mondopcnet.com soltanto per scopi didattici e su di essi mondopcnet.com non ha alcun diritto.
Recommended