Allievi
Corsi di Laurea in Ingegneria Informatica.
Obiettivi
Obiettivo della prima parte del corso è introdurre gli aspetti teorici delle basi di dati ed i linguaggi per la gestione e l’interrogazione dei dati in esse contenuti. Tale parte è corredata da alcune esercitazioni in laboratorio, che permetteranno agli studenti di utilizzare un DataBase Management System (DBMS), così da applicare in pratica i concetti introdotti durante le lezioni in aula.
La seconda parte del corso verte invece sui modelli concettuali, sulle metodologie e sulle tecniche per la progettazione di una base di dati a partire dai suoi requisiti. Superato il corso, lo studente sarà in grado di progettare e realizzare basi di dati di media complessità, e sviluppare applicazione che le utilizzino.
Distribuzione indicativa dell’attività didattica
Ore di lezione: 30, ore di esercitazione: 20.
Programma delle lezioni e delle esercitazioni
1. INTRODUZIONE AL CORSO
1.1 Il sistema informativo nell'azienda
1.2 Caratteristiche dei DBMS e concetto di transazione
1.3 Utenti, strumenti e moduli di un DBMS
2. TEORIA RELAZIONALE
2.1 Il modello relazionale dei dati, sua definizione (informale e formale) e concetti fondamentali
2.2 Algebra relazionale: operazioni unarie e binarie
2.3 Interrogazioni in algebra relazionale e loro ottimizzazione
2.4 Calcolo relazionale: definizione, equivalenza fra algebra relazionale e calcolo relazionale
2.5 Datalog: definizione, interrogazioni ricorsive, specifica di vincoli di integrità,
2.6 Relazioni tra i poteri espressivi dei linguaggi formali presentati
3. LINGUAGGI PER BASI DI DATI
3.1 Introduzione a SQL: standardizzazione di SQL, domini SQL, vincoli e semplice definizione di tabelle
3.2 SQL come DDL: integrità referenziale, definizione di schemi e loro modifica, cataloghi relazionali
3.3 Interrogazioni SQL semplici, interrogazioni con ordinamenti e raggruppamenti, Interrogazioni SQL complesse
3.4 Comandi di modifica e viste in SQL
3.5 Aspetti evoluti del DDL: indici e vincoli di integrità generici, controllo dell'accesso, viste e controllo dell'accesso, transazioni (cenni)
3.6 SQL per la programmazione: funzioni SQL, SQL Embedded, ODBC/ADO e JDBC, procedure
4. PROGETTAZIONE DI BASI DI DATI
4.1 Fasi della progettazione
4.2 Le astrazioni nella progettazione dei dati
4.3 Il modello Entità-Relazioni: definizione, associazioni, identificatori e gerarchie, proprietà delle gerarchie
4.4 Il ciclo di progettazione: fasi di progettazione, strategie, qualità di un progetto concettuale
4.5 Progettazione logica: fasi del progetto logico, eliminazione delle gerarchie, gestione degli identificatori, gestione degli attributi, gestione delle associazioni, normalizzazione (cenni)
4.6 Progettazione fisica (cenni)
5. INTRODUZIONE A XML NELLE BASI DI DATI
5.1 Cennni di XML
5.2 DTD (Document Type Definition) e XSD (XML Schema Definition)
Indicazioni specifiche relative alle singole sezioni
--
|