Introduzione ad Access 1 Obiettivi • Creare e popolare un database. • Interrogare un database. • Accedere al database tramite input e output grafici. 2 Caratteristiche principali di Access • Access è un software prodotto da Microsoft ed integrato all’interno della suite gestionale MS Office. • Come gli altri prodotti di Office, Access si caratterizza per: • una vasta gamma di funzionalità; • una stretta integrazione con gli altri software Microsoft. 3 Caratteristiche principali di Access • Fornisce le funzionalità di un DBMS (DataBase Management System), pensato per un utilizzo non industriale (Desktop computers). • Supporta due linguaggi di interrogazione: • QBE (Query By Example); • SQL (Structured Query Language). • Permette l’utilizzo di un linguaggio di programmazione (VBA). • Integra un ambiente di sviluppo di applicazioni. 4 In questa lezione • Vedremo le funzionalità principali di Access, molte delle quali, come detto, riguardano altri prodotti e tecnologie Microsoft. • Toccheremo solo superficialmente argomenti che prevedono conoscenze esterne approfondite. 5 L’ambiente Access • Per selezionare gli strumenti di lavoro, utilizzare la voce Visualizza, Barra degli strumenti. Una configurazione ragionevole prevede la visualizzazione della Barra del database. 6 L’ambiente Access • Molte operazioni ed accessori, quali la guida in linea, la gestione dei files, le operazioni di ricerca e stampa, sono simili a quelle di Excel e Word. Ad esempio, la guida in linea è disponibile alla voce ? della barra dei menu. • Come nel caso di Word ed Excel, è possibile impostare le caratteristiche di stampa delle tabelle utilizzando il menu File, alla voce Imposta pagina. • Come in Word ed Excel, si può visualizzare il risultato dell’elaborazione utilizzando il menu File, alla voce Anteprima di stampa. 7 Apertura di un database • Per aprire un nuovo database, utilizzare la maschera che appare all’apertura del programma oppure l’icona nuovo nella barra degli strumenti. 8 Apertura di un database 9 Struttura fisica del database • Access mantiene ogni database in un unico file con estensione .mdb. • Questo file contiene in realtà molto più che tabelle. 10 Creazione di tabelle • Una volta aperto un database, nuovo o già esistente, è possibile modificarlo tramite un pannello di controllo. • Questo pannello permette di accedere ai principali task gestionali. • Dopo avere svolto un’appropriata analisi del sistema da produrre, e dopo avere specificato la struttura logica del database, si possono cominciare a creare le tabelle. 11 Pannello di controllo Dal pannello di controllo sono raggiungibili i task effettuabili sul database. Per ogni task sono possibili diverse opzioni. 12 Creazione di tabelle • Vogliamo creare il seguente schema: DOCENTI (ID, Nome, Cognome, Dipartimento) CORSI (Codice, Nome, Docente) STUDENTI (Matricola, Nome, Cognome) STUDCORSI (Matricola, Codice) 13 Cominciamo con DOCENTI • Il codice SQL per creare la tabella DOCENTI potrebbe essere: CREATE TABLE DOCENTI( ID CHAR(5) PRIMARY KEY, Nome VARCHAR(20), Cognome VARCHAR(20), Dipartimento VARCHAR(4) ) 14 In Access l’approccio è grafico • Per creare tabelle, e in generale per operazioni di DDL (Data Definition Language), Access utilizza schermate grafiche, e non il linguaggio SQL. • Tramite queste schermate e il linguaggio QBE (che vedremo in seguito) è possibile creare ed utilizzare database in Access senza conoscere SQL. 15 Creazione di una tabella Iniziamo con il creare una tabella tramite visualizzazione struttura 16 Interfaccia per la creazione di tabelle 17 Creazione di una tabella Nomi e tipi degli attributi Informazioni testuali sugli attributi Caratteristiche di ogni attributo 18 Nomi degli attributi • Access permette l’utilizzo di molti nomi per gli attributi, contenenti anche spazi e caratteri speciali( #, @, …). • È comunque opportuno utilizzare solo caratteri testuali, senza spazi, compatti ma significativi, per evitare problemi successivi. 19 Tipi dei dati • I tipi di Access sono diversi dai tipi di SQL. Testo fino a 255 caratteri Testo fino a 64000 caratteri Numero intero assegnato automaticamente Valore binario (sì/no, vero/falso,…) Oggetto che implementi il 20 Protocollo OLE (per includere Word, immagini,…) Caratteristiche degli attributi Numero massimo di caratteri Utile per le valute Specifica il formato con cui vengono immessi i dati, ad esempio numeri di telefono con la barra dopo il prefisso. Cliccandoci sopra, è possibile aprire un wizard. 21 Caratteristiche degli attributi Nome da visualizzare al posto del nome dell’attributo, se questo è poco comprensibile Definisce il formato corretto per i dati di questo tipo. Anche in questo caso è disponibile un wizard 22 Confronto con SQL CREATE TABLE DOCENTI( ID CHAR(5) PRIMARY KEY, Nome VARCHAR(20), Cognome VARCHAR(20), Dipartimento VARCHAR(4) ) I tipi dei dati sono differenti Dobbiamo vedere come creare 23 chiavi primarie Impostazione di una chiave primaria • È sufficiente selezionare l’attributo o gli attributi che si vogliono fare diventare chiavi primarie e cliccare sull’icona a forma di chiave (oppure dal menu Modifica, scegliere Chiave primaria). 24 Tabella STUDCORSI e chiavi esterne • Le tabelle CORSI e STUDENTI si creano in modo analogo. • Definiamo ora in SQL la tabella STUDCORSI. CREATE TABLE STUDCORSI ( Matricola CHAR(8) REFERENCES STUDENTI(Matricola), Corso CHAR(4) REFERENCES CORSI(Codice) ) 25 Chiavi esterne e Relazioni Access • In Access le chiavi esterne si definiscono tramite Relazioni (menu Strumenti, voce Relazioni). • Nella maschera Relazioni, le chiavi si importano trascinandole da una tabella all’altra. 26 Maschera Relazioni 27 Tipo di relazione e politiche di reazione • Per ogni relazione impostata, bisogna specificare le politiche di reazione a cancellazione e aggiornamento 28 Interrogare il database: scrittura di interrogazioni Si possono scrivere interrogazioni accedendo al task Query del pannello di controllo 29 Scrittura di interrogazioni • Access permette di scrivere interrogazioni sia in SQL (Structured Query Language) che in QBE (Query By Example). • Passare da una modalità all’altra, oppure eseguire una query, è semplice come cliccare su un bottone. • In Access la differenza tra query e vista è irrilevante. 30 Gestione delle interrogazioni Esecuzione Modalità SQL Modalità QBE 31 Esempi di interrogazioni (I) • Interrogazione 1: codice dei corsi. • Interrogazione 2: codice e nome del corso “Fisica Generale II”, con l’identificatore del docente. • Interrogazione 3: codice e nome del corso, con l’identificatore del docente, per i corsi che terminano con la lettera a oppure per “Fisica Generale II”. 32 Condizione LIKE • LIKE “S*”: qualsiasi sequenza di caratteri iniziante per S. • LIKE “[A-D]*”: qualsiasi carattere fra A e D, seguito da qualsiasi sequenza di caratteri. • LIKE “Cors?”: “Cors” seguito da UN carattere qualsiasi. 33 Altre condizioni • Between #5-Gen-95# And #10-Gen-95# • =#2/2/95# • In(“Canada”,”Regno Unito”) • Not “USA” • >=“N” (carattere tra N e Z) • Esistono inoltre molte funzioni più specifiche (da cercare, se necessario, nella guida). 34 Esempi di interrogazioni (II) • Interrogazione 4: nome e cognome dei docenti che hanno concesso appelli nell’anno 2004. 35 Alcune funzioni per le date • Between Date() And DateAdd(“m”,3,Date()): da oggi a tra tre mesi. • Year([DataOrdine])=Year(Now()) And Month([DataOrdine])=Month(Now()): DataOrdine nell’anno e nel mese correnti. 36 Esempi di interrogazioni (II) • Interrogazione 5: selezionare il docente con lo stipendio massimo, visualizzandone il cognome nonché l’ammontare dello stipendio. 37