POLITECNICO DI BARI CORSI DI LAUREA IN ING. INFORMATICA, ING. ELETTRONICA E ING. GESTIONALE PROVA SCRITTA DI SISTEMI INFORMATIVI Traccia 1 10 Maggio 2005 nome_______________cognome________________matr___________CdL____________ord____ a) Si progetti uno schema concettuale Entità-Relazioni per lo scenario più sotto descritto. Si vuole realizzare una base di dati per monitorare le attività delle principali borse valori europee. Ciascuna borsa valori è identificata dal nome della città in cui ha sede ed è caratterizzata da una tipologia del sistema di scambio (tradizionale o computerizzato), indirizzo ed anno di fondazione. A ciascuna borsa valori sono associati degli indici caratterizzati da un nome univoco, da un valore numerico, da una base in cui il valore è espresso (centesimi o millesimi) e una data ed ora a cui il calcolo del valore suddetto si riferisce. E’ necessario memorizzare nel tempo tutti i valori calcolati. Ciascuna borsa valori offre un mercato per la vendita e l’acquisto di titoli, che generalmente si suddividono in obbligazioni di enti pubblici o società private ed azioni di società. Il sistema deve memorizzare i dati relativi agli enti o società (Partita_IVA, nome, indirizzo, tel) che emettono il titolo suddetto, la data ed ora di emissione, il prezzo ed il numero di titoli emessi. Le stesse società o dei privati (CF, nome, cognome, indirizzo, tel) possono a loro volta comprare dei titoli facendo un’offerta caratterizzata da un prezzo, una data e ora di inizio, una data e ora di validità dell’offerta stessa ed un numero di titoli richiesti. Indicare le cardinalità delle relazioni e un identificatore per ciascuna entità. b) Si definiscano le relazioni (tabelle) risultanti in SQL, avendo cura di esplicitare i vincoli di integrità. c) Si vuole realizzare un database relativo ai partecipanti ad un fantacalcio on-line. E’ stata a tal fine costruita, da un inesperto progettista, una unica tabella descritta dai seguenti attributi: (username, password, e-mail, nome_partecipante, cognome_partecipante, punteggio, ID_calciatore, nome_calciatore, cognome_calciatore, data_partita, stadio, ID_squadra1, ID_squadra2, ID_squadra, nome_squadra) Si consideri il punteggio come un valore numerico assegnato a ciascun calciatore ad ogni partita e che un stesso calciatore può essere di proprietà di più partecipanti al fantacalcio. Si determini la chiave della tabella e si individuino, esplicitandole, le dipendenze funzionali. Sulla base di queste si proceda alla normalizzazione in 3° forma normale, preservando le dip. Funzionali. d) Date le seguenti relazioni: PERSONA (CF, nome, cognome, tel) INSERZIONE (Oggetto, data_inserzione, descrizione, CF, categoria) RISPOSTA (Codice, Oggetto, descrizione, CF, data_risposta) esprimere in SQL le seguenti interrogazioni: 1) Calcolare il numero di risposte, date da ogni persona, per ciascuna inserzione relativa alla categoria Sport. 2) Estrarre nome e cognome delle persone che hanno scritto più inserzioni nel 2004 che nel 2003.