Laurea in Ingegneria Informatica - Università di Roma "La Sapienza" Corso di Basi di Dati - A.A. 2003/2004 Seconda Esercitazione Autoguidata Diego Calvanese Domenico Lembo AVVIO DEL CALCOLATORE • Dalla finestra di login immettete Nome utente: studente Password : <vuota> • Aprite il file \\Sauron\Esercitazioni\Basidati\ Eser-2003-10-24\eser-2003-10-24.html Slide 2 OBIETTIVI DELL'ESERCITAZIONE Utilizzare Oracle 9i Lite e l'ambiente MSQL per: • effettuare query con group-by e operatori di aggregazione • effettuare query annidate • definizione e uso di viste Slide 3 Oracle 9i Lite Informazioni su come 1. Scaricare Oracle 9i Lite, 2. Installarlo 3. Utilizzare I comandi principali di MSQL disponibili alla pagina http://www.dis.uniroma1.it/~lembo/didattica/oracle9i-lite-intro Slide 4 1. CREARE UNA BASE DI DATI • Aprite un prompt dei comandi • Create la base di dati persone tramite il comando createdb polite persone • Se la base di dati è già esistente cancellate il file c:\oracle\ora90\Mobile\SDK\oldb40 \persone.odb e ripete l’operazione • Connettetevi a persone tramite il comando msql system/manager@jdbc:polite:persone Slide 5 2. CREARE TABELLE Si consideri la tabella PERSONE, contenente i seguenti attributi • nome : 20 caratteri (chiave); • eta : intero (3 cifre); • reddito : intero (10 cifre); • sesso : 'M' oppure 'F'; • residenza : 20 caratteri. e la tabella GENITORI, contenente i seguenti attributi • genitore : 20 caratteri; • figlio : 20 caratteri; • ordFiglio : intero (2 cifre). (Figlio,Genitore) e` chiave primaria. Ogni figlio è una persona ed ogni genitore è una persona. Slide 6 3. INTERROGARE IL DATABASE popolate la base di dati con il file \\Sauron\Esercitazioni\Basidati\Eser-2003-10-24\eser2-db.sql confrontate i risultati ottenuti con quelli del file \\Sauron\Esercitazioni\Basidati\Eser-2003-10-24\eser2-3-ris.txt 1. Trovare il numero di luoghi di residenza distinti; 2. Trovare il minimo, il massimo, la somma e la media dei redditi di persone raggruppate per residenza; 3. Trovare il reddito medio dei padri per città di residenza; 4. Trovare le persone che sono genitori di almeno 2 figli; 5. Trovare l'elenco ordinato dei genitori i cui figli guadagnano tutti piu` di 20 milioni. 6. Definire una vista EtaMediaFigli che restituisce per ogni persona l'età media dei suoi figli. 7. Utilizzare la vista EtaMediaFigli per trovare tra tutti i genitori quello i cui figli hanno la massima età media. Slide 7