Sito ufficiale del corso di Basi di Dati (04AFQPC) per studenti della Laurea Triennale in Ing. del Cinema e dei Mezzi di Comunicazione.
Avvisi
- 2020-09-20: Benvenuti all'edizione 2022/2023 del corso!
- I laboratori inizieranno martedì 18 ottobre
- Nella sezione "Materiale" di questo sito trovate le informazioni relative al Progetto
-
Suddivisione in gruppi per i laboratori e per le esercitazioni a squadre:
- Gruppo GIALLO: da A a G
- Gruppo AZZURRO: da H a ZPer l'assegnazione dei gruppi ai vari slot orari consultate il piano del corso.
Informazioni
Presentazione
- Lucidi di introduzione al corso
- Regole d'esame
- Pagina ufficiale del corso sul Portale della Didattica
- Il corso aderisce al progetto OCSE dal titolo «Fostering and assessing creativity and critical thinking in higher education and teacher education»
Docenti
- prof. Laura Farinetti (This email address is being protected from spambots. You need JavaScript enabled to view it.)
- ing. Lorenzo Canale (This email address is being protected from spambots. You need JavaScript enabled to view it.)
Orario del corso
Giorno e ora | Tipologia | Aula |
Mercoledì 8:30-11:30 | Lezione/esercitazione | 9I |
Venerdì 8:30-10:00 | Lezione/esercitazione | 4T |
Martedì 16:00-17:30 | Laboratorio squadra 1 | LAIB 5 |
Martedì 17:30-19:00 | Laboratorio squadra 2 | LAIB 5 |
NON tutte le ore del calendario ufficiale saranno svole, e le attività potranno variare da settimana a settimana: consultare frequentemente la sezione Piano del corso per informazioni più dettagliate, sempre aggiornate.
Materiale di studio
- Materiale fornito dai docenti
Testo di riferimento
- Atzeni, Ceri, Paraboschi, Torlone, “Basi di dati - Modelli e linguaggi di interrogazione”, 4 ed., McGraw Hill, 2013.
Modalità di comunicazione con i docenti
- Gruppo Telegram: https://t.me/+2zf8cNZx_g00Yjg0
Programma del corso
Presentazione
Insegnamento obbligatorio per la Laurea Triennale in Ingegneria del Cinema e dei Mezzi di Comunicazione, collocato al I pd del III anno. Il corso descrive i sistemi per la gestione di basi di dati, considerando le metodologie di progettazione di basi di dati e la loro gestione e interrogazione. L'attività di laboratorio permette di sperimentare l'uso dei prodotti open-source più diffusi.
Risultati attesi
- Conoscenza degli aspetti fondamentali di un sistema per la gestione di basi di dati
- Conoscenza della struttura e delle proprietà del modello relazionale dei dati
- Capacità di scrivere interrogazioni in linguaggio SQL
- Conoscenza del modello concettuale Entità-Relazione per la rappresentazione dei dati e della metodologia per la progettazione concettuale e logica relazionale di una base di dati
- Capacità di progettare una base di dati relazionale
- Conoscenza dei costrutti SQL per la gestione delle viste, del controllo dell'accesso e per la gestione delle transazioni e degli indici
Prerequisiti
Competenze di base di programmazione.
Programma
- Caratteristiche di un sistema per la gestione di basi di dati
- Caratteristiche del modello relazionale dei dati
- Modello concettuale dei dati (modello Entità-Relazione) e metodologia di progettazione concettuale e logica relazionale di una base di dati
- Linguaggio SQL: istruzioni per la definizione delle basi di dati e l'elaborazione dei dati
- Linguaggio SQL: istruzioni per la gestione delle viste, del controllo dell'accesso, delle transazioni e degli indici
Laboratori e/o esercitazioni
Esercitazioni in aula: svolgimento di esercizi in aula (linguaggio SQL e progettazione di basi di dati), sviluppo di un progetto (fase 1: progettazione concettuale)
Esercitazioni in laboratorio: interrogazioni di basi dati in SQL, sviluppo di un progetto (fase2: implementazione)
Modalita' di verifica dell'apprendimento
Vedere le Regole d'esame.
Materiale
Questa sezione conterrà tutto il materiale didattico (slide, documenti, link, ...) utilizzato durante il corso.
Lucidi delle lezioni
- Introduzione al corso
- Introduzione alle basi di dati
- Modello relazionale
- Progettazione di basi di dati
- Linguaggio SQL: fondamenti
- Linguaggio SQL: costrutti avanzati
Esercitazioni
- Esercizi di progettazione concettuale e logica: testo
- Altri esercizi di progettazione concettuale e logica: testo
- SQL base: testo
- SQL - 1: testo e
- SQL - 2: testo
- SQL - 3: testo
Laboratori
Laboratorio SQL 1:
- Esercizi: esercizi_1 , esercizi_2
- Risultati Attesi: risultati_attesi_1, risultati_attesi_2
- Database: world.sql
- Soluzioni: soluzione_1, soluzione_2
Laboratorio SQL 2:
- Esercizi: esercizi_1, esercizi_2
- Risultati Attesi: risultati_attesi_1, risultati_attesi_2
- Database: deliveries.sql
Gioco Cluedo SQL: Link al gioco
Strumenti
- Notebook Kaggle Fertilizzanti
- link 1 (versione in classe): https://www.kaggle.com/code/lapolito/fork-of-creazione-del-database
- link 2 (versione pulita): https://www.kaggle.com/code/lapolito/creazione-del-database
- link 3 (versione pulita con video di commento):: presto disponibile
Progetto "Our World in Data"
- Presentazione del progetto
- Esempio di documento di progetto sui fertilizzanti
- File Excel condiviso per la scelta dell'argomento
Scadenze relative al progetto
- 15 novembre 2022: scadenza di consegna del database (vedere istruzioni)
- 6 dicembre 2022: scadenza di consegna delle query proposte, con soluzione e risultato atteso (vedere istruzioni)
- Relazione del progetto "OWiD"
- 15 dicembre 2022: scadenza di consegna della relazione (la consegna è attiva dal 28/11)
- 4 gennaio 2023: scadenza del peer-review delle relazioni
- Istruzioni per la consegna e la valutazione: slide (la registrazione è disponibile sul Portale / Virtual Classroom)
- 12 gennaio 2023: termine del gioco, cioè della sottomissione delle query
Esame
Temi d'esame
Parte di SQL (per tutti)
- Esempio 1: testo e soluzione
- Esempio 2: testo e soluzione
- Esempio 3: testo e soluzione
- Esempio 4: testo e soluzione
- Esempio 5: testo e soluzione
- Esempio 6: testo e soluzione
- Esempio 7: testo e soluzione
- Esempio 8: testo e soluzione (prova esame svolta il 11/1)
Parte di progettazione (per chi NON fa il progetto)
- Esempio 1: testo e soluzione
- Esempio 2: testo e soluzione
- Esempio 3: testo e soluzione
- Esempio 4: testo e soluzione
- Esempio 5: testo e soluzione
- Esempio 6: testo e soluzione (prova esame svolta il 11/1)
Parte di progettazione (per chi FA il progetto)
- Esempio 1: testo e soluzione
- Esempio 2: testo e soluzione
- Esempio 3: testo e soluzione
- Esempio 4: testo e soluzione (prova esame svolta il 11/1)
Piano del corso
In questa sezione trovate:
- il calendario delle lezioni del corso, in cui sono riportate le attività e gli argomenti;
- l'elenco delle videolezioni, con la date consigliate e le scadenze dei quiz.
Calendario delle lezioni
La tabella seguente riporta la pianificazione delle lezioni del corso, per trasparenza di informazione e per facilitare la pianificazione da parte degli studenti. Ci riserviamo di modificare la pianificazione delle lezioni per esigenze didattiche.
IMPORTANTE: Si noti che non tutte le lezioni indicate nell'orario ufficiale verranno utilizzate.
Legenda: la colonna Tipo può essere Lez=Lezione, Es-T=Esercitazione in aula per tutti, Es-SQ=Esercitazione in aula a squadre, Lab=Esercitazione di laboratorio. Le attività in bianco sono per tutti, quelle in giallo o in azzurro sono attività a squadre (gruppo GIALLO e gruppo AZZURRO).
Data | Ore | Tipo | Ore | Argomento | Aula | Docente |
---|---|---|---|---|---|---|
mer 28/09/2022 | 8.30-11.30 | Lez | 3 | Introduzione al corso. Introduzione alle BD. Metodologia di progettazione delle BD. | 9I | Laura Farinetti |
ven 30/09/2022 | 8.30-10.00 | Lez | 1,5 | Progettazione concettuale: il modello ER. | 4T | Laura Farinetti |
mer 05/10/2022 | 8.30-11.30 | Lez | 3 | Il modello relazionale. Definizioni. Vincoli di integrità. | 9I | Laura Farinetti |
ven 07/10/2022 | 8.30-13.00 | Lez | 1,5 | Il progetto "Our World in Data": introduzione ed esempio. | 4T | Laura Farinetti |
mer 12/10/2022 | 8.30-11.30 | Es-T | 3 | Progetto "Our World in Data": utilizzo di dati "reali". | 9I | Lorenzo Canale |
ven 14/10/2022 | 8.30-10.00 | Es-T | 1,5 | Esercizi di progettazione concettuale e logico-relazionale. | 4T | Laura Farinetti |
mar 18/10/2022 | 16.00-17.30 | Lab | 1,5 | Laboratorio #1: Our World in Data: gruppo GIALLO | LAIB 5 | Lorenzo Canale |
mar 18/10/2022 | 17.30-19.00 | Lab | 1,5 | Laboratorio #1: Our World in Data: gruppo AZZURRO | LAIB 5 | Lorenzo Canale |
mer 19/10/2022 | 8.30-10.00 | Es-SQ | 1,5 | Esercitazione di progetto #1: gruppo GIALLO | 9I | Laura Farinetti |
mer 19/10/2022 | 10.00-11.30 | Es-SQ | 1,5 | Esercitazione di progetto #1: gruppo AZZURRO | 9I | Laura Farinetti |
ven 21/10/2022 | 10.00-11.30 | Lez | 1,5 | L'istruzione SELECT. Join fra tabelle. | 4T | Laura Farinetti |
mar 25/10/2022 | 16.00-17.30 | Lab | 1,5 | Laboratorio #2: Our World in Data: gruppo AZZURRO | LAIB 5 | Lorenzo Canale |
mar 25/10/2022 | 17.30-19.00 | Lab | 1,5 | Laboratorio #2: Our World in Data: gruppo GIALLO | LAIB 5 | Lorenzo Canale |
mer 26/10/2022 | Lezione cancellata | |||||
ven 28/10/2022 | 8.30-10.00 | Es-T | 1,5 | Esercizi di SQL. | 4T | Laura Farinetti |
mer 02/11/2022 | 8.30-10.00 | Es-SQ | 1,5 | Esercitazione di progetto #2: gruppo AZZURRO | 9I | Laura Farinetti |
mer 02/11/2022 | 10.00-12.00 | Es-SQ | 1,5 | Esercitazione di progetto #2: gruppo GIALLO | 9I | Laura Farinetti |
ven 04/11/2022 | 8.30-10.00 | Es-T | 1,5 | Esercizi di SQL. | 4T | Lorenzo Canale |
mar 08/11/2022 | 16.00-17.30 | Lab | 1,5 | Laboratorio #3: SQL: gruppo GIALLO | LAIB 5 | Lorenzo Canale |
mar 08/11/2022 | 17.30-19.00 | Lab | 1,5 | Laboratorio #3: SQL: gruppo AZZURRO | LAIB 5 | Lorenzo Canale |
mer 09/11/2022 | 8.30-11.30 | Lez | 3 | L'istruzione SELECT. Divisione. Table function. Esempi. | 9I | Laura Farinetti |
ven 11/11/2022 | Lezione cancellata | |||||
mar 15/11/2022 | 16.00-17.30 | Lab | 1,5 | Laboratorio #4: SQL: gruppo AZZURRO | LAIB 5 | Lorenzo Canale |
mar 15/11/2022 | 17.30-19.00 | Lab | 1,5 | Laboratorio #4: SQL: gruppo GIALLO | LAIB 5 | Lorenzo Canale |
mer 16/11/2022 | Lezione cancellata | |||||
ven 18/11/2022 | 8.30-10.00 | Es-T | 1,5 | Esercizi di SQL. | 4T | Laura Farinetti |
mar 22/11/2022 | 16.00-17.30 | Lab | 1,5 | Laboratorio #5: SQL: gruppo GIALLO | LAIB 5 | Lorenzo Canale |
mar 22/11/2022 | 17.30-19.00 | Lab | 1,5 | Laboratorio #5: SQL: gruppo AZZURRO | LAIB 5 | Lorenzo Canale |
mer 23/11/2022 | 8.30-11.30 | Lez | 3 | Gestione delle transazioni. Controllo dell'accesso. Modalità di consegna progetto. | 9I | Laura Farinetti |
ven 25/11/2022 | 8.30-10.00 | Es-T | 1,5 | Presentazione del gioco "OWiD" |
4T | Lorenzo Canale |
mar 29/11/2022 | 16.00-17.30 | Lab | 1,5 | Laboratorio #6: Gioco "OWiD": gruppo AZZURRO | LAIB 5 | Lorenzo Canale |
mar 29/11/2022 | 17.30-19.00 | Lab | 1,5 | Laboratorio #6: Gioco "OWiD": gruppo GIALLO | LAIB 5 | Lorenzo Canale |
mer 30/11/2022 | 8.30-10.00 | Es-SQ | 1,5 | Esercitazione di progetto #3: gruppo GIALLO | 9I | Laura Farinetti |
mer 30/11/2022 | 10.00-11.30 | Es-SQ | 1,5 | Esercitazione di progetto #3: gruppo AZZURRO | 9I | Laura Farinetti |
ven 02/12/2022 | 8.30-10.00 | Es-T | 1,5 | Esercizi SQL. |
4T | Laura Farinetti |
mar 06/12/2022 | Laboratorio cancellato | |||||
mer 07/12/2022 | 8.30-11.30 | Es-T | 3 | Esercitazione su SQL: Cluedo. | 9I | Canale, Farinetti |
ven 09/12/2022 | Lezione cancellata | |||||
mar 13/12/2022 | 16.00-17.30 | Lab | 1,5 | Laboratorio #7: Gioco "OWiD": gruppo GIALLO | LAIB 5 | Lorenzo Canale |
mar 13/12/2022 | 17.30-19.00 | Lab | 1,5 | Laboratorio #7: Gioco "OWiD": gruppo AZZURRO | LAIB 5 | Lorenzo Canale |
mer 14/12/2022 | Lezione cancellata | |||||
ven 16/12/2022 | 8.30-10.00 | Es-T | 1,5 | Esercizi SQL. |
4T | Laura Farinetti |
mar 20/12/2022 | Laboratorio cancellato | |||||
mer 21/12/2022 | Lezione cancellata | |||||
mar 10/1/2023 | 16.00-17.30 | Lab | 1,5 | Laboratorio #8: Gioco "OWiD": gruppo AZZURRO | LAIB 5 | Lorenzo Canale |
mar 10/1/2023 | 17.30-19.00 | Lab | 1,5 | Laboratorio #8: Gioco "OWiD": gruppo GIALLO | LAIB 5 | Lorenzo Canale |
mer 11/1/2023 | 8.30-11.30 | Es-T | 3 | Simulazione esame. | 9I | Laura Farinetti |
ven 13/1/2023 | 8.30-10.00 | 1,5 | Verifica progetti (su prenotazione, verranno pubblicate le istruzioni). |
4T | Laura Farinetti |
Programmazione della teoria: lezioni, videolezioni e quiz
La tabella riporta la sequenza delle lezioni e delle videolezioni pre-registrate, con il relativo quiz. Per le video-lezioni è riportato il periodo consigliato per la visione. Per i quiz è riportato il periodo di pubblicazione (apertura-chiusura). I quiz devono essere sottimessi ENTRO la mezzanotte della data di chiusura, e possono essere sottomessi 1 SOLA VOLTA. Si noti che la numerazione delle videolezioni e dei quiz non è sempre sequenziale e che alcuni quiz sono aperti contemporaneamente.
Legenda: le righe in bianco si riferiscono a lezioni in aula, quelle in verde a videolezioni pre-registrate. I quiz sono associati sia alle video-lezioni che alle lezioni svolte in aula.
Nota: le videolezioni pre-registrate si trovano nella sezione "Virtual Classroom" del Portale della Didattica, i quiz si trovano nella sezione "Exercise" del Portale della Didattica.