Dipartimento: DIMES Corso di Laurea: INGEGNERIA INFORMATICA Indirizzo Internet Corso di Laurea: www.dimes.unical.it Nome insegnamento: BASI DI DATI Condivisione: Articolazione in moduli: NO Settore Scientifico Disciplinare: ING-INF/05 Docente responsabile: FILIPPO FURFARO Posizione docente responsabile: RICERCATORE – UNIVERSITA’ DELLA CALABRIA Crediti formativi universitari: 9 Numero ore riservate attività didattiche assistite: 84 Numero ore lezioni: 57 Numero ore esercitazioni: 27 Numero ore riservate studio individuale: 142 Tipologia: ATTIVITA’ CARATTERIZZANTE – INGEGNERIA INFORMATICA Lingua di insegnamento: ITALIANO Collocazione: II ANNO II SEMESTRE Prerequisiti: Algoritmi, strutture dati Il corso presenta i concetti fondamentali delle basi di dati, dei linguaggi di interrogazione e gestione, e dei metodi e delle tecniche di progettazione. Argomenti delle lezioni: Il programma si articola nelle fasi di seguito dettagliate. Introduzione: Sistemi informativi, informazioni e dati. Basi di dati e sistemi di gestione di basi di dati. Modelli dei dati. Linguaggi e utenti delle basi di dati.Vantaggi e svantaggi dei DBMS Metodologie e modelli per il progetto: Il ciclo di vita dei sistemi informativi. Metodologie di progettazione e basi di dati. Il modello Entità-Relazione: Entità, Relazioni, Cardinalità, Attributi, Gerarchie. Documentazione di schemi E-R. Il modello relazionale: Modelli logico. Schema, istanza di una base di dati. Relazioni e tabelle, Attributi. Informazione incompleta e valori nulli. Chiave, Superchiave. Vincoli di integrità (di dominio, di tupla). Vincoli di integrità' referenziale. La progettazione logica: Ristrutturazione di schemi E-R. Analisi delle ridondanze. Eliminazione delle gerarchie. Partizionamento/accorpamento di concetti. Scelta degli identificatori principali. Traduzione verso il modello relazionale. Documentazione di schemi logici. Esempi di progettazione logica. Algebra relazionale: Operatori insiemistici: Unione, intersezione, differenza, prodotto. Ridenominazione. Selezione. Proiezione. Join. Interrogazioni in algebra relazionale. Equivalenza di espressioni algebriche. Algebra con valori nulli. Viste. Calcolo relazionale su attributi e su tuple. SQL: Definizione dei dati in SQL (DDL). I domini elementari. Definizione di schema. Definizione delle tabelle. Definizione dei domini. Specifica di valori di default. Vincoli intrarelazionali. Vincoli interrelazionali. Modifica degli schemi. Interrogazioni in SQL. Interrogazioni semplici. Operatori aggregati. Interrogazioni con raggruppamento. Interrogazioni nidificate. Manipolazione dei dati in SQL. Inserimento. Cancellazione. Modifica. Vincoli di integrità generici. Asserzioni. Viste. Cenni di Embedded SQL. La normalizzazione: Ridondanze e anomalie. Dipendenze funzionali. Terza Forma Normale. Forma normale di Boyce e Codd. ecomposizioni. Proprietà e Qualità delle decomposizioni. Progettazione di basi di dati e normalizzazione. Indicizzazione: Concetto di indice. Tecniche di hash. Hash statico e dinamico. Hash virtuale, estendibile, lineare. Indici B-tree e varianti. Gestione delle transazioni: Concetto di transazione: proprietà di atomicità, consistenza, isolamento, durabilità. Meccanismi per la gestione delle transazioni nelle basi di dati. Dati semistrutturati: Il linguaggio di rappresentazione XML. Definizione dello schema dei dati: DTD ed XMLSchema. Interrogazione di documenti XML: XPath ed XQuery. Argomenti delle esercitazioni: - Progettazione concettuale, logica e fisica di una base di dati Interrogazione di una base di dati mediante algebra relazionale ed SQL Definizione di indici opportuni a supporto di interrogazioni efficienti Normalizzazione di uno schema relazionale Definizione dello schema di un documento XML mediante DTD ed XMLSchema. Interrogazioni di documenti XML mediante XPath ed XQuery. Modalità di frequenza: OBBLIGATORIA Modalità di svolgimento delle lezioni: In aula, con metodologie tradizionali e con l’uso di trasparenze e proiettore collegato al PC. Modalità di svolgimento delle esercitazioni: In aula, con metodologie tradizionali e proiettore collegato al PC. Metodi di valutazione: Prova scritta e prova orale obbligatoria. Testi di riferimento: P. Atzeni, S. Ceri, S. Paraboschi, R. Torlone, Basi di dati – Modelli e linguaggi di interrogazione, McGraw Hill. A. Silberschatz, H. F. Korth, S. Sudarshan, Database System concepts, McGraw Hill. Orario e aule lezioni: Calendario prove valutazione: www.dimes.unical.it