Il corso fornisce una panoramica completa sulle tecniche e gli strumenti per la progettazione e lo sviluppo di una base di dati, applicati su esempi reali utilizzando gli strumenti software più diffusi
Sillabo
- Analisi dei requisiti. Progettazione concettuale delle basi di dati. I diagrammi Entità-Relazione. (circa 12 ore di lezione)
- Progettazione logica delle basi di dati. Ristrutturazione e ottimizzazione di diagrammi ER. Passaggio da modello concettuale a modello logico. (circa 12 ore di lezione)
- I tipi di dato in SQL. Operatori ed espressioni in SQL. Gestione delle utenze e dei permessi in un DBMS. Creazione e modifica di tabelle in SQL. Vincoli su tabelle. Vincoli di integrità referenziale. (circa 10 ore di lezione)
- Inserimento di dati in SQL. Cancellazione di dati in SQL. Modifica di dati in SQL. (circa 2 ore di lezione)
- Interrogazioni di base in SQL. Interrogazioni avanzate: join interno ed esterno tra tabelle. Interrogazioni avanzate: subquery. Interrogazioni avanzate: raggruppamento dei record. Interrogazioni avanzate: query di unione, intersezione, differenza. (circa 12 ore di lezione)
- Concetti avanzati di SQL: viste. Concetti avanzati di SQL: procedure. Concetti avanzati di SQL: trigger. Interfacciamento con i linguaggi di programmazione: Java/JDBC. Interfacciamento con i linguaggi di programmazione: PHP. (circa 12 ore di lezione)
Prerequisiti
I prerequisiti indicano le conoscenze necessarie a una corretta fuizione del corso. Non si tratta di propedeuticità formali, in quanto le conoscenze qui elencate potrebbero provenire da insegnamenti diversi e anche dall’esperienza personale.
Conoscenza di base della programmazione imperativa
Metodi didattici
Le lezioni sono di carattere prettamente pratico, e prevedono lo sviluppo interattivo di esempi in aula; gli studenti sono incoraggiati a partecipare alle lezioni facendo domande e discutendo le soluzioni adottate negli esempi sviluppati
Verifica dell’apprendimento
La valutazione finale prevede lo sviluppo (in gruppo) di un progetto e un’eventuale prova orale (individuale). Il progetto da sviluppare consiste in un database, da progettare e implementare insieme a una serie di query ad esso riferite. La prova orale parte dalla discussione del progetto e ha lo scopo di verificare il livello collaborazione nel gruppo e il contributo individuale al progetto