LAUREA IN INFORMATICA
a.a 1996-97
Programma del corso (2 u.d.)
BASI DI DATI E SISTEMI INFORMATIVI
(cod. 201130)
PARTE I.
Organizzazione logica dei dati: sequenziale, sequenziale ordinata, diretta, ad albero, a catena.
Sovrastrutture di dati: fattorizzazione, compressione, indici, sequenziale con indice, liste, indici binari.
Strutture elementari di dati e loro normalizzazione: item, gruppi, relazioni di gruppo, entry, database.
Minimizzazione forme Booleane.
PARTE II.
Architettura Ansi Sparc. Indipendenza dei dati.
Modelli di dati: gerarchico, reticolare, relazionale.
Sistema reticolare: definizione e manipolazione dei dati nel DBTG.
Modello relazionale: relazioni, vincoli di integritą (chiave, chiave esterna, integritą referenziale), dipendenze funzionali, algebra relazionale, normalizzazione e forme normali (prima, seconda, terza, Boyce-Codd).
Informazione incompleta: valori nulli e logiche multivalore.
Sistema relazionale: definizione e manipolazione dei dati in SQL-2. Funzioni aggregate. Indice B-tree.
Basi di dati distribuite: topologia centralizzata/reticolare, architetture aggregata/integrata - open/ proprietaria, architettura client/server, decomposizione e sintesi delle interrogazioni relazionali, ottimizzatore euristico/esaustivo.
TESTI.
1) Dispense (per la Parte Prima).
Almeno uno dei seguenti:
2) P. Atzeni ed altri: Basi di Dati (concetti, linguaggi e architetture), McGraw-Hill, Milano 1996. (I ed.).In particolare, i capitoli 1, 2, 3 (sezioni da 3.1 a 3.8, 3.13 e 3.14), 4, 8 (esclusa la sezione 8.5), 9 (sezioni 9.5, 9.6 e 9.7), 10 (sezioni 10.1 e 10.2), Appendice A.
3) R. Elmasri, S.B. Navathe: Fundamentals of Database Systems, Addison Wesley 1994 (2nd Ed.).In particolare, i capitoli 1, 2, 4, 5, 6 (esclusa la sezione 6.8), 7, 10 (escluse le sezioni 10.4 e 10.6), 12, 16 (sezioni 16.1 e 16.2), 23 (esclusa la sezione 23.6)
Prof. E. LEFONS