Di seguito sono riportati i testi di alcuni esercizi proposti agli studenti nei miei corsi recenti. Alcuni dei testi sono pensati fondamentalmente per essere svolti in aula dal docente - eventualmente con il concorso degli studenti. Altri sono stati invece pensati per essere svolti direttamente dagli studenti in laboratorio.
Il materiale è ancora incompleto, e richiede ulteriori integrazioni.
Per lo svolgimento delle esercitazioni in laboratorio è possibile utilizzare diverse piattaforme, a seconda della natura e degli obiettivi del corso.
La piattaforma di riferimento da me utilizzata negli anni scorsi per il modulo di Basi di Dati del corso di laurea in Informatica prevede Linux come sistema operativo e PostgreSQL come DBMS (questo fatto si riflette nel testo di alcune delle tracce). PostgreSQL - che deriva dall'originale Postgres sviluppato a Berkley - ha il vantaggio di essere libero ("open source"), di fornire una implementazione praticamente completa di SQL-92 intermediate, e in aggiunta anche avanzate funzionalità relazionali a oggetti. Lo svantaggio è che - a meno di complesse operazioni come la ricompilazione dei sorgenti o l'installazione di Cygwin - può essere installato solo in ambiente Linux.
Una buona alternativa recente è FirebirdSQL. Firebird è un DBMS libero che discende dalla versione beta di Interbase 6.0 (pubblicata all'epoca con licenza open source dalla Borland). A giudicare dalle prime impressioni d'uso, e' molto completo e solido e può essere installato sia in ambiente Windows che Linux.
Naturalmente, una ulteriore alternativa è rappresentata da MySQL; MySQL è libero e gira praticamente su qualsiasi piattaforma; inoltre garantisce prestazioni all'altezza dei prodotti leader del mercato (come Oracle) e questo lo rende particolarmente adatto allo sviluppo di applicazioni Web. Purtroppo la versione 3.xx fornisce un supporto largamente incompleto per l'SQL (alcune caratteristiche mancanti sono: le viste, alcuni operatori insiemistici, le interrogazioni nidificate; inoltre, le transazioni sono utilizzabili solo a patto di installare un opportuno motore). Di conseguenza dal punto di vista didattico non è l'ideale.
Una altra alternativa, di cui però non ho ancora avuto modo di verificare le potenzialità è SapDB, il DBMS relazionale fornito dalla SAP. E' libero e disponibile sia in ambiente Windows che Linux.
Naturalmente, in corsi di piccolo taglio una soluzione accettabile è usare Microsoft Access.
esercitazione n.1, basata sull'esercitazione per l'algebra - da svolgere in aula (in formato .doc)
esercitazione n.2 - da svolgere in aula o in laboratorio (in formato .doc)
esercitazione n.3 - da svolgere in aula o in laboratorio (in formato .doc)