Next: Linguaggi di programmazione: Paradigmi
Up: Primo Triennio e Diploma
Previous: Ricerca Operativa
  Indice
I sistemi per la gestione di basi di dati rappresentano un elemento
fondamentale per la maggior parte dei sistemi informatici presenti
nella realtà economica di ogni paese avanzato. Il corso di Basi di
Dati e sistemi informativi (III anno) ha lo scopo di fornire allo
studente le conoscenze necessarie per la progettazione di una base di
dati e delle relative applicazioni. In particolare nel corso si
illustreranno in dettaglio le metodologie per la progettazione
concettuale di una base di dati e per la successiva realizzazione
della stessa sui più diffusi sistemi per la gestione di basi di
dati, si presenteranno le tecniche per la realizzazione dei sistemi
per la gestione di basi di dati e si illusteranno le caratteristiche
fondamentali del linguaggio di interrogazione SQL. Lo studente alla
fine del corso sarà in grado di definire autonomamente le specifiche
concettuali di una base di dati, di progettarne la struttura logica,
di interrogare la base di dati e di realizzare le applicazioni che
interagiscono con la base stessa.
Programma del corso:
- Introduzione ai sistemi per la gestione di basi di dati:
Architettura e funzionalità di un sistema per la gestione di basi
di dati. Concetti di: indipendenza fisica, indipendenza logica,
persistenza, concorrenza, affidabilità, interrogazione e
aggiornamento. Vantaggi di un sistema per la gestione di basi di dati
rispetto al file system di un sistema operativo.
- Progettazione concettuale di una base di dati: Modelli concettuali
per il progetto dei dati. Il modello Entità-Relazione
(E-R). Elementi del modello E-R: entità, attributi, associazioni,
gerarchie di generalizzazione e vincoli di cardinalità. Lo schema
concettuale di una base di dati. Progetto delle funzioni: il modello
dataflow. Elementi del modello dataflow: processi, flussi, interfacce
e archivi. Progetto integrato dati e funzioni.
- Progettazione logica di una base di dati: Modelli dei dati per i
sistemi di gestione di basi di dati: il modello
relazionale. Definizioni di: relazione, vincoli di integrità,
schema relazionale. Traduzione di schemi concettuali in schemi
relazionali. Linguaggi per la definizione di una base di dati
relazionale: il linguaggio SQL. Istruzioni SQL per: la creazione di
una relazione, la definizione di vincoli di integrità e il
controllo dell'accesso ai dati.
- Interazione con una base di dati: Introduzione ai linguaggi per la
definizione, modifica e interrogazione di una base di dati. Il
linguaggio SQL: il blocco di selezione (Select-From-Where),
interrogazioni nidificate, ordinamento e raggruppamento dei dati, il
blocco di inserimento, cancellazione e aggiornamento (Insert, Delete,
Update), viste.
- Transazioni e organizzazione interna di un sistema per la gestione
di basi di dati: Rilevanza dei sistemi transazionali. Concetto di
transazione. Proprietà di una transazione: atomicità,
persistenza, serializzazione, isolamento. Cenni al controllo della
concorrenza (Lock e Deadlock). Metodi di accesso ai dati: strutture
dati sequenziali, hashing e a indice.
Next: Linguaggi di programmazione: Paradigmi
Up: Primo Triennio e Diploma
Previous: Ricerca Operativa
  Indice
Roberto Giacobazzi
1999-07-20