ESAME DI LABORATORIO DI BASI DI DATI 02/07/2010 Compito C
Transcript
ESAME DI LABORATORIO DI BASI DI DATI 02/07/2010 Compito C
ESAME DI LABORATORIO DI BASI DI DATI 02/07/2010 Compito C Esercizio 1. Si consideri il seguente schema relazionale relativo ad una porzione di un ipotetico sistema di gestione del torneo di tennis Wimbledon 2010, attualmente in corso nell’omonimo sobborgo londinese:: • tennista(nome, nazione, altezza, peso) • partita(codice, vincitore, perdente), dove l’attributo codice e’ una stringa alfanumerica univoca, che dipende dal livello del torneo (ottavi, quarti, semifinali, finali) e dai nomi dei due atleti contendenti. • set(partita,numero, punti1, punti2) Si definisca uno script SQL per la generazione e la popolazione di uno schema wimbledon2010 che implementa lo schema relazionale proposto. Tale script dovra’ essere composto da 3 parti principali: (1) La prima, per cancellare schemi e tabelle omonime eventualmente presenti nella base di dati. (2) La seconda per generare lo schema definendo vincoli opportuni. (3) La terza, per popolare opportunamente lo schema generato utilizzando i dati reperibili sul testo allegato all’esame. In particolare, si inseriscano tutti i dati relativi agli incontri dei quarti di finale femminili. Esercizio 2. Si estenda lo script SQL creato al punto precedente al fine di eseguire le seguenti interrogazioni: (1) Determinare il numero di partite disputate a Wimbledon 2010 che vedono coinvolti atleti di nazionalita’ russa. (2) Determinare per ogni nazione, il numero di partite vinte da un tennista di tale nazione. (3) Elencare le nazioni eliminate ai quarti di finali di Wimbledon 2010, ovvero le nazioni che vantano almeno un atleta qualificato ai quarti di finale, ma nessun atleta qualificato alle semifinali. (4) Elencare i giocatori che non hanno mai perso un confronto con un avversario piu’ basso di statura. (5) Trovare il nome del giocatore che ha vinto complessivamente piu’ set. Esercizio 3. Si scriva un’applicazione Java che, caricando l’opportuno driver JDBC, si connette al DB di riferimento e: • Determina gli atleti qualificati a partecipare alle semifinali dei singoli femminili. • Stampa sul file semifinaliF.txt il risultato della query precedente. 1 2 ESAME DI LABORATORIO DI BASI DI DATI 02/07/2010 Esercizio 4. La classifica ATP e’ una classifica a punti dei giocatori di tennis professionisti stilata dall’ATP (Association of Tennis Professionals). Si assuma che il DB di riferimento disponga di una tabella per il mantenimento della suddetta classifica ATP, all’interno dello schema ATP : AT P.rankAT P (atleta, punti) In base alle regole dell’ATP: • i giocatori che si qualificano ai quarti di finale del torneo di Wimbledon guadagnano 360 punti ATP, • i gicatori che si qualificano alle semifinali del torneo di Wimbledon guadagnano 720 punti ATP, • i gicatori che si qualificano alle finali del torneo di Wimbledon guadagnano 1200 punti ATP, • i vincitori del torneo di Wimbledon guadagnano 2000 punti. Si definisca un trigger per aggiornare la classifica ATP in base ai risultati del torneo di Wimbledon 2010.