Lezioni di Laboratorio sui Data Base Docente Tutor: Dott. Gianluigi Roveda Informatica per l'impresa Prima Parte: Open Office - Base
PREMESSA Questo lavoro è stato realizzato a partire dalle slides del Dott. N. Dragoni (tutor di Informatica per l'impresa nell'anno accademico 2008-2009) da cui si è presa la sequenza dei contenuti. Sono però diversi i punti in cui si differenziano: il modo di presentare i vari argomenti, la versione di Base utilizzata, il sistema operativo usato, gli esempi presentati e alcune informazioni aggiuntive riportate. Credo che i due lavori si possano ritenere, a buona ragione, due opere distinte anche se sugli stessi argomenti. Si consiglia di prendere visione di entrambi i lavori, avendo usato degli esempi diversi può risultare d'aiuto la lettura e lo studio di entrambe le presentazioni. Dott. Gianluigi Roveda
OBIETTIVO Imparare a implementare DB composti da tabelle in relazione tra loro COSA VEDREMO? 1. Come avviare Base e creare un DB; 2. La struttura dell'interfaccia di Base; 3. Come creare le tabelle; 4. Come creare associazioni tra tabelle; 5. Come scrivere query.
Avvio di BASE Un DB deve essere creato (e salvato) prima ancora che vi si metta qualcosa dentro. Maschera con cui si avvia Base
Impostazioni per la creazione del DB Per salvare il nominativo in un elenco di Open Office delle sorgenti di dati Premendo il tasto avanti si giunge a una seconda maschera che stabilisce alcune impostazioni di Base inerenti al DB che si stà creando. Per impostare l'azione che verrà effettuata da Base al salvataggio del DB
Creazione del DB area di navigazione per selezionare la cartella dove salvare il DB Premendo FINE si apre questa maschera per la scelta del pathname del DB e per la creazione del suo file Nome del file contenente il DB
Interfaccia per la manipolazione di un DB Menù per manipolare l'oggetto selezionato nel menù a sinistra Tabelle Gestione delle tabelle Query Gestione di interrogazioni su tabelle GUI Gestione delle Form per interfacciarsi con tabelle e query Rapporti Gestione dei documenti di testo in formato Writer che mostra i dati in maniera organizzata e formattata Elenco degli oggetti creati del tipo selezionato nel menù a sinistra Menù con l'elenco degli oggetti che si possono aggiungere in un DB
Creazione di una Tabella 1/6 Dopo aver selezionato dal menù a sinistra la voce tabella si attiva la voce crea tabella in vista struttura Nome dei campi colonna Tipo di valore nelle colonne Interfaccia per la costruzione delle tabelle
Creazione di una Tabella 2/6 IMPLEMENTAZIONE Come abbiamo impostato gli attributi? Come abbiamo impostato la chiave primaria?
Creazione di una Tabella 3/6 seleziono il tipo di valore contenuto nel campo (2) premendo sulla cella grigia all'inizio della riga del campo matricola si apre un menù (3) seleziono la voce chiave primaria (4) scrivo il nome del campo (1) Ottengo che il campo sia identificato come chiave primaria (5) opzionale ( 5' ) Lunghezza in cifre Numero di cifre decimali Valore predefinito messo nel campo
Creazione di una Tabella 4/6 Inserimento del campo Nome cosa cambia? configurazione del campo: imposto il fatto se il campo può essere lasciato vuoto o meno
Creazione di una Tabella 5/6 Per chiudere e salvare premo la crocetta bianca in campo rosso (1) Scrivo il nome della tabella (Studenti) e premo ok (2) Appare una nuova icona nell'area delle tabelle che compongono il DB inerente alla tabella appena creata
Creazione di una Tabella 6/6 Chiavi Primarie Composte C L A S S I Classe Sezione NumeroStudenti Aula L'entità in esame presenta una chiave primaria composta da due attributi Implemento gli attributi della tabella (1) Premo il tasto destro per con il puntatore del mouse sulle celle grige (3) Seleziono le righe degli attributi che compongono la chiave primaria (2) Seleziono la voce chiave primaria così da ottenere la chiave composta (4)
Popolamento di una Tabella Clicco due volte sull'icona della tabella che voglio popolare (1) Si apre una finestra per popolare la tabella (2) Terminata la fase di popolamento chiudo senza pormi il problema di salvare (3)
Creazione di una Associazione 1/4 S T U D E N T I Matricola Nome Cognome iscritto 1:1 1:N C D L Codice Denominazione Facoltà Come implemento l'associazione? Intanto vediamo il progetto logico: studenti(matricola, Nome, Cognome, Codice) cdl(codice, Denominazione, Facoltà) F.K.
Creazione di una Associazione 2/4 voglio realizzare l'associazione tra cdl e Studenti
Creazione di una Associazione 3/4 L'interfaccia che si apre presenta l'elenco di tutte le tabelle in una maschera più piccola sovrastante Seleziono le classi coinvolte nella relazione (una alla volta) (1) Aggiungo la tabella selezionata (2) Aggiunte tutte le tabelle chiudo la maschera sovrastante (3)
Creazione di una Associazione 4/4 Seleziono la chiave primaria della tabella dal lato 1 dell'associazione (1) Per trascinamento sovrappongo il Codice della tabella cdl sul codice della tabella Studenti (2) L'associazione uno a molti è realizzata
Creazione di una Query in SQL 1/2 Seleziono la voce ricerche (1) Attivo la voce Crea ricerca in vista SQL (2) si apre un editor di testo al fine d'inserire la query in SQL (3) Vi scrivo la query in SQL (4) e salvo come nel caso delle tabelle (con nome esempio_query) Nota: i campi sono tra doppi apici
Creazione di una Query in SQL 2/2 Per attivare la query clicco due volte sull'icona (1) Appare una nuova icona che indica la creazione della nuova query Il risultato della query mi viene dato in forma di tabella (2)
Modificare una Query o una Tabella Seleziono l'icona della query (o della tabella interessata) e premo il tasto destro del mouse (1) Seleziono la voce Modifica (2) Riottengo l'editor per le query (3) o nel caso di tabelle la maschera per la costruzione delle tabelle faccio la stessa cosa( 2' )
Esercizio Realizza le tabelle Aziende, Magazzini e Prodotti. Popolale rispettivamente con 3, 4 e 10 elementi. I Magazzini dovranno essere di proprietà di un elemento della tabella Aziende (esiste una associazione 1-N tra Aziende e Magazzini). I Magazzini e i Prodotti sono in associazione N- N. Poni in una query, facendola funzionare, la seguente query: select Denominazione, from Magazzini where Citta = Bologna ;
Bibliografia N. Dragoni, Esempio di creazione e interrogazione (in SQL) di un database utilizzando OpenOffice Base 2.0, http://www.cs.unibo.it/~gaspari, 2008 M. Gaspari, G. Roveda, Un'introduzione all'informatica aldilà della Patente Europea, Pitagora Editrice Bologna, 2006