Esercitazione corsi di recupero - Digilander

Esercitazione corsi di recupero
Si vogliono gestire con una base di dati le informazioni necessarie ad organizzare corsi di recupero in
una scuola. Gli elementi che caratterizzano il problema sono: gli studenti, le materie, dove gli studenti
possono avere delle carenze, e i docenti che devono fare i corsi di recupero. Gli studenti possono avere
più materie in cui sono carenti ed in ogni materia ci possono essere più studenti bisognosi di recupero.
il legame tra studenti e materia è realizzato tramite il voto che lo studente ha in quella materia e la
data in cui questo voto è stato assegnato. Ogni docente insegna una sola materia, ma la stessa materia
può essere insegnata da più docenti.
Produrre lo schema concettuale (E/R), il modello logico dei dati (schema relazionale) e le seguenti query:
1. Elenco delle prove sostenute dagli studenti in una materia, mostrando cognome, nome e data. Fare
query parametrica
2. Cognome, nome e classe degli studenti che hanno ottenuto voti inferiori a 5 in una materia di cui
viene fornita la descrizione
3. Elenco alfabetico di tutti gli studenti con cognome e nome e numero delle prove sufficienti in una
determinata materia
4. Elenco dei cognomi e nomi degli studenti di una certa classe con il numero delle prove con il voto
inferiore a 5 di ciascuno studente
5. Elenco delle descrizione delle materie con il numero dei docenti per ogni materia
6. Descrizione delle materie nelle quali sono state effettuate più di una prova
7. Per ciascuna materia la descrizione e il numero delle prove svolte nel periodo tra l’1 ottobre e il 15
novembre
8. Numero delle prove che un determinato studente, di cui si conosce il cognome e nome, ha sostenuto
in ciascuna materia con la descrizione della materia
9. Elenco delle materie con la media dei voti assegnati per i quali la media è superiore a 5
10. Elenco con cognome e nome degli studenti di una determinata classe che hanno il voto minimo
inferiore a 4
11. Elenco con cognome e nome degli studenti di una determinata classe che hanno il voto massimo
superiore a 7
12. Elenco degli studenti con la materia che hanno svolto più di 2 prove
13. Cognome e nome degli studenti per i quali il cognome inizia con la lettera “R”
14. Elenco alfabetico dei docenti che insegnano o lettere o storia o inglese
15. Cognome e nome degli studenti di una classe che hanno la media dei voti di una materia compresa
fra due valori limite
Ricordiamo che il processo di progettazione di una base di dati prevede le seguenti fasi:
Analisi dei requisiti informativi e delle transazioni: si tirano fuori le necessità dell’utente in termini di
contenuti informativi da produrre e da operazioni da effettuare sulla base di dati.
Progettazione concettuale: si produce uno schema formalizzato in termini di entità ed associazioni atto a
rappresentare la realtà d’interesse e che descriva le interrelazione fra le diverse entità ed associazioni
Progettazione logica: si produce l’organizzazione logica dei dati attraverso la quale gestire i dati per
produrre il contenuto informativo e le transazioni da operare. Tale schema logico poi implementato su di un
sistema di elaborazione utilizzando uno specifico DBMS (gestore Sw di data base)
Progettazione fisica: si definisce l’organizzazione fisica dei dati (chiavi primarie, indici, formato dei dati,
vincoli di integrità, etc.) con successiva implementazione del sistema
Il testo del problema, insieme alle query da sviluppare costituisce, per il momento, la fase di analisi