La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

1 BASI DI DATI. 2 Cosè un database Un database è un insieme di informazioni correlate a un oggetto o a uno scopo particolare, ad esempio la carriera scolastica.

Presentazioni simili


Presentazione sul tema: "1 BASI DI DATI. 2 Cosè un database Un database è un insieme di informazioni correlate a un oggetto o a uno scopo particolare, ad esempio la carriera scolastica."— Transcript della presentazione:

1 1 BASI DI DATI

2 2 Cosè un database Un database è un insieme di informazioni correlate a un oggetto o a uno scopo particolare, ad esempio la carriera scolastica di uno studente. In un database i dati sono memorizzati in tabelle, costituite da righe e colonne Microsoft Access è un RDBMS (Relational DataBase Management System) che gestisce tutte le informazioni in un singolo file di database, all'interno del quale sono disponibili diversi oggetti utili a tale scopo: tabelle, query, maschere, report, pagine, macro e moduli

3 3 E il modello organizzativo dei database più diffuso. In base a tale modello: Un database è un insieme di relazioni (tabelle) Ciascuna tabella è un insieme di (righe) Ciascuna (riga) è una sequenza di attributi (colonne) Lattributo (colonna) è lunità elementare di informazione, contraddistinto dal dominio, cioè dallinsieme predefinito di valori che può assumere Il modello relazionale - 1

4 4 Il modello relazionale - 2 Esemplificando, vediamo le caratteristiche definite nella diapositiva precedente in riferimento alla relazione (tabella) esami superati da studenti universitari: matricolainsegnamentodatavotolode Statistica 111/11/ Diritto Commerciale14/12/200130SI ESAMI (riga) Attributo (colonna) Il Dominio è costituito dai valori che voto può assumere, cioè 18, 19 … 29, 30.

5 5 Tabella Excel e tabella Access Una tabella è costituita da righe e colonne, come in un foglio elettronico. Molte volte le righe vengono chiamate record, le colonne campi. In questo foglio, abbiamo una riga per ogni studente ed una colonna per gli attributi associati.

6 6 La valutazione delle esigenze degli utenti La raccolta della modulistica in uso Progettazione di un database 1 – Definiamo lo scopo e le modalità di utilizzo del database tramite: 2 – Ogni tabella contiene informazioni relative ad uno stesso argomento. Procediamo, quindi, alla definizione delle tabelle necessarie e alle colonne da cui sono formate 3 – Individuiamo, tra le colonne di ogni tabella, quale contiene un dato univoco per ogni riga, ad es. la Matricola in una tabella anagrafiche di studenti, questa viene dettachiave primaria 4 – Impostiamo le relazioni tra le varie tabelle, basandoci sulla chiave primaria come sopra definita

7 7 Il linguaggio SQL Il linguaggio SQL (Structured Query Language) viene usato per definire le tabelle, per vederne e manipolarne i dati contenuti. Le istruzioni SQL possono essere costruite manualmente o col supporto degli strumenti visuali di Access.

8 8 Un semplice database per registrare gli esami sostenuti dagli studenti di una Università matricolacod_inse gnamento datavot o lode /11/ /12/200130SI Per costruire il database abbiamo bisogno di almeno tre tabelle: - Studenti - Insegnamenti - Esami La tabella insegnamenti potrebbe sembrare superflua ma, a seguito di un processo detto di normalizzazione, questa viene derivata come segue: matricolacod_i.Nome ins.datavotolode Statistica 111/11/ Diritto Com.14/12/200130SI ESAMI (originaria) ESAMI (dopo la normalizzazione) cod_insegnamentodescr 234Statistica 1 235Diritto Commerciale INSEGNAMENTI

9 9 Perché normalizzare ? I motivi sono diversi, quelli principali sono: Ripetizione di dati Non normalizzando, devo inserire la completa descrizione dellinsegnamento per ogni esame superato (con la possibilità di commettere errori di digitazione), al posto di inserire il solo codice; non aumenterei la quantità di dati significativi e, in conclusione, occuperei anche più memoria. Anomalie di aggiornamento Se cambia la descrizione dellinsegnamento, posso cambiarla su una sola riga nella tabella insegnamenti, anziché su tutte le righe della tabella esami (se non la normalizzo) dove lesame compare.

10 10 Creazione di un database Access Apriamo Access e, nel riquadro Attività, facciamo click su Database vuoto Diamo un nome al database e premiamo Invio; da questo momento possiamo inserire i nostri oggetti

11 11 La schermata iniziale di un database Access vuoto La finestra a lato è quella mostrata da Access quando creiamo un nuovo database I principali elementi sono: - Elenco dei tipi di oggetti che possiamo creare (tabelle, query, maschere …), incolonnati sulla sinistra - Opzioni di creazione e oggetti creati, nella parte centrale della finestra

12 12 Creazione di una tabella clicchiamo, nella colonna degli oggetti, su Tabelle; facciamo doppio click su Crea una tabella in visualizzazione struttura, verrà mostrata una finestra per la definizione delle colonne della tabella; inseriamo i dati relativi alle due colonne (campi). Per creare la tabella insegnamenti con gli strumenti visuali di Access: Il simbolo della chiave indica che il campo è una chiave primaria Definizione di un indice univoco. Un indice velocizza le operazioni di ricerca sulla tabella e, in questo caso, garantisce altresì che non ci siano descrizioni duplicate

13 13 Tipi di dati - 1 Testo Memo Utilizzare per testo lungo e numeri. Memorizza fino a caratteri. Combinazioni di testo e numeri. Memorizza fino a 255 caratteri. La proprietà Dimensione campo definisce il numero massimo di caratteri che possono essere digitati. Numerico Utilizzare per i dati numerici da inserire in calcoli matematici, ad eccezione dei calcoli con valuta. In tal caso, utilizzare il tipo di dati Valuta. Memorizza 1, 2, 4 o 8 byte e 16 byte solo per l'ID replica (GUID, Globally Unique Identifier). La proprietà Dimensione campo definisce il tipo numerico specifico. Data/Ora Utilizzare per la data e l'ora. Memorizza 8 byte. Valuta Utilizzare per i valori di valuta e per evitare gli arrotondamenti per difetto nei calcoli. Memorizza 8 byte. Utilizzare per i numeri univoci sequenziali (con incremento di una unità alla volta) o per i numeri assegnati in modo casuale inseriti automaticamente quando si aggiunge un record. Memorizza 4 byte e 16 byte solo per l'ID replica (GUID). Contatore Utilizzare per i dati ai quali può essere assegnato solo uno di due valori, ad esempio Sì/No, Vero/Falso, On/Off. I valori Null non sono consentiti. Memorizza 1 bit. Sì/No Oggetto OLE Utilizzare per gli oggetti OLE, ad esempio documenti Word, Excel, immagini, suoni ecc. creati in altri programmi tramite il protocollo OLE. Memorizza fino a 1 GB.

14 14 Tipi di dati - 2 Collegamento ipertestuale Utilizzare per i collegamenti ipertestuali. Un collegamento ipertestuale può essere un percorso UNC o un URL. Memorizza fino a caratteri. Utilizzare per creare un campo che consente di scegliere un valore da un'altra tabella o da un altro elenco di valori tramite una casella combinata. Se si sceglie questa opzione nell'elenco dei tipi di dati, verrà avviata una procedura guidata. Ricerca guidata Selezione del tipo di dato. Nelle schede sottostanti, è possibile definire ulteriori proprietà del campo

15 15 Definire una chiave primaria La chiave primaria è un campo, o una combinazione di campi, che identifica in modo univoco ciascun record in una tabella. La presenza di una chiave primaria è consigliata (ma non obbligata) poiché, oltre a garantire lintegrità dei dati (almeno in parte), consente di stabilire relazioni predefinite con altre tabelle. Il pulsante col simbolo della chiave col quale è possibile definire una chiave primaria Il piccolo rettangolo a sinistra del nome del campo è detto selettore di riga. Selezioniamo il campo che farà da chiave primaria e poi clicchiamo sul simbolo della chiave sulla barra degli strumenti

16 16 Relazioni fra tabelle Le relazioni impongono delle regole di integrità referenziale tra le tabelle. Ad esempio, definendo una relazione tra la tabella esami e quella degli insegnamenti basata sulla colonna cod_insegnamento, se inseriamo una riga nella tabella esami, siamo certi che il codice insegnamento sia un codice esistente, in quanto la relazione impostata obbliga Access a fare questa verifica. Inoltre, se impostiamo le relazioni, saremo agevolati nella creazione di query, report e maschere. La relazione tra due tabelle A e B, a seconda del modo in cui le righe vengono coinvolte, può essere: - Uno a uno (un record della tabella A corrisponde ad un unico record nella tabella B e viceversa) - Uno a molti (un record della tabella A corrisponde a più record nella tabella B, è il caso di cui sopra: un insegnamento ha molte ricorrenze in esami) - Molti a molti (un record della tabella A corrisponde a più record nella tabella B e viceversa, per definirla è necessario creare una terza tabella)

17 17 Tabella studenti e tabella esami Per impostare una relazione tra studenti ed esami sostenuti dobbiamo creare altre due tabelle, studenti ed esami, e definire la relativa struttura:

18 18 Impostazione di una Relazione Impostiamo la relazione vista con gli strumenti visuali di Access. nel menu Strumenti scegliamo Relazioni; clicchiamo sul pulsante aggiungi tabella; selezioniamo le tabelle interessate; trasciniamo la colonna cod_insegnamento della tabella esami sulla stessa colonna della tabella insegnamenti; verrà aperta una finestra per definire i dettagli della relazione; attiviamo la check box Applica integrità referenziale; a seconda del tipo di relazione, possiamo anche attivare laggiornamento e leliminazione a catena delle righe; ripetiamo il procedimento per la relazione tra esami e studenti (basata sulla colonna matricola). Pulsante aggiungi tabella

19 19 Esercitazione N. 1 Creiamo le tabelle elencate, dimensionando i campi in modo opportuno: … e impostiamo le relazioni: studenti citta studenti esami studenti diplomi insegnamenti esami corsi_facolta corsi corsi_facolta facolta NOTA: per impostare le relazioni, i campi coinvolti devono essere dello stesso tipo SEGUE >>

20 20 Ulteriori tabelle e relazioni … e impostiamo le relazioni: studenti prenotazioni studenti iscrizioni appelli insegnamenti appelli docenti appelli prenotazioni studenti corsi_facolta (su due campi)

21 21 Layout delle relazioni

22 22 Immettiamo i dati nelle tabelle CITTA DIPLOMI CORSI FACOLTA DOCENTI INSEGNAMENTI CORSI_FACOLTA STUDENTI ESAMI ISCRIZIONI APPELLI PRENOTAZIONI


Scaricare ppt "1 BASI DI DATI. 2 Cosè un database Un database è un insieme di informazioni correlate a un oggetto o a uno scopo particolare, ad esempio la carriera scolastica."

Presentazioni simili


Annunci Google