Basi di Dati 1 (I semestre - IV anno vecchio ordinamento) - a.a. 2001-2002

Ultima modifica: 14 Gennaio 2002. Commenti a Giovanna Guerrini.



Programma del corso

Aspetti introduttivi

Evoluzione nei sistemi di gestione dati. Obiettivi e servizi di un DBMS. Modelli dei dati: concetti di base, evoluzione. Linguaggi di accesso e manipolazione. Livelli nella rappresentazione dei dati. Utenti di un sistema di basi di dati.

Modelli tradizionali dei dati

Il modello relazionale

Concetti base (schema, relazione, tupla). Algebra relazionale. Operazioni derivate (intersezione, join, divisione). Calcolo relazionale. Potere espressivo dell'algebra relazionale e del calcolo relazionale. Safe relational calculus. Operazioni di modifica. Viste. Modifiche attraverso le viste.

Il linguaggio SQL

Struttura delle interrogazioni. Funzioni aritmetiche e aggregate, sottointerrogazioni, operazioni di unione, differenza, intersezione. Creazione di relazioni e viste. Operazioni di modifica. Uso di SQL da linguaggio di programmazione: estensioni procedurali di SQL (PL/SQL), interfacce per DBMS (JDBC), SQL embedded (SQLJ). Concetto di cursore, SQL dinamico.

Il modello Entity-Relationship

Diagrammi E-R: entita', domini, attributi, associazioni. Associazioni di sottoinsieme, gerarchie di generalizzazione. Vincoli di integrita', identificazione e dipendenze di esistenza.

Metodologie per la progettazione di basi di dati

Aspetti introduttivi. Fasi nella progettazione, analisi dei requisiti, progettazione concettuale, progettazione logica. Trasformazione di schemi ER in schemi relazionali.

Teoria della normalizzazione

Aspetti introduttivi. Dipendenze funzionali. Assiomi di Armstrong. Calcolo della chiusura transitiva, insiemi di copertura, insiemi minimali. Scomposizioni lossless join. Scomposizioni che preservano le dipendenze funzionali. Terza forma normale. Forma normale Boyce-Codd. Algoritmi per la determinazione di scomposizioni in forma normale Boyce-Codd e di scomposizioni in terza forma normale.

Cenni all'architettura di un DBMS

Cenni a strutture di memorizzazione, strutture fisiche di accesso, gestione del buffer. Cenni a ottimizzazione di interrogazioni. Nozione di transazione. Anomalie delle transazioni concorrenti. Gestione dei guasti. Cenni a meccanismi di controllo dell'accesso.




Modalita' d'esame

Per sostenere l'esame e' necessario svolgere un' esercitazione (gruppi di 3 persone) e sostenere un'esame orale. L'esame orale puo' essere sostuito dai compitini che si terranno durante il corso. Il voto dell'esercitazione (nel range [-1,3]) e' sommato al voto ottenuto da:




Testi di riferimento

Libro di testo

E.Bertino, B.Catania, E.Ferrari, G.Guerrini. Sistemi di basi di dati: concetti e architetture. UTET Libreria, 1997. (Nel corso di basi di dati 1 vengono trattati i capp. 1, 2, 3, 9, 10 del libro).
Soluzioni esercizi cap 2

Altri testi consigliati