Programma del corso DOCUMENTAZIONE AUTOMATICA

BASI DI DATI E SISTEMI INFORMATIVI
Prof. F.Cesarini a.a. 2005 - 2006
Introduzione
Caratteristiche dei sistemi per la gestione di basi di dati (DBMS). Livelli di astrazione.
Modelli di dati. Linguaggi per basi di dati.
Modelli di dati
Il modello entity-relationship. Il modello relazionale: schema e estensione; chiave; valori nulli;
vincoli di integrita'. Gli operatori dell'algebra relazionale. Interrogazioni ed espressioni relazionali,
ricerca del max (min) su una colonna, condizioni tipo “sempre”, “mai”, ..., join di una tabella con
se stessa.
Progettazione di una base di dati
Metodologie di progettazione. Analisi dei requisiti. La progettazione concettuale: progetto di dati e
funzioni. Progettazione Entity Relationship (EER): entita', corrispondenze, gerarchie. Criteri di
ristrutturazione. Progettazione logica: trasformazione di uno schema EER in uno schema
relazionale.
Dipendenze e forme normali
Dipendenze funzionali. Assiomi di Armstrong: correttezza e completezza. Calcolo della chiusura
di un insieme di attributi. Coperture minimali. Decomposizioni di schemi che preservano il
contenuto e le dipendenze. Prima, seconda, terza forma normale, forma di Boyce Codd e
algoritmi di decomposizione.
Introduzione al linguaggio SQL
Definizione delle tabelle, vincoli di integrità, chiave primaria, chiave esterna. Struttura base delle
query. Ordinamento, raggruppamenti, funzioni di aggregazione. I join. Trattamento dei valori nulli.
Testi consigliati
[1] P. Atzeni, S. Ceri, S. Paraboschi, R. Torlone "Basi di dati", seconda edizione, McGraw-Hill,
1999.
[2] P. Atzeni, S. Ceri, S. Paraboschi, R. Torlone "Basi di dati – modelli e linguaggi di
interrogazione", McGraw-Hill, 2002.
[3] A. Albano, G. Ghelli, R. Orsini "Basi di dati relazionali e a oggetti", Zanichelli, 1997.
Riferimenti dettagliati
[1] oppure [2]: cap. 1, 2, 3.1, 4.1, 4.2
[1]: cap. 5, 6, 7 oppure [2] cap. 6, 7, 8
[3]: 5.1 e 5.4 che sono anche in [1] oppure [2]; cap. 6 per le dipendenze e forme normali (gli
argomenti in [1] oppure [2] non sono sufficienti), come dimostrazione solo la correttezza e
completezza degli assiomi di Armstrong