CORSO DI BASI DI DATI, A.A. 2005-2006
Informazioni Generali
Programma
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 . Il problema degli standard. I tipi di dato in SQL. Il linguaggio di definizione dei dati. Struttura delle interrogazioni. Funzioni aritmetiche e aggregate,
sottointerrogazioni, operazioni di unione, differenza, intersezione. Creazione di
relazioni e viste. Operazioni di modifica.
- Gestione dati da programma . Stored procedures. Uso di SQL da linguaggio di programmazione, concetto di cursore, SQL dinamico. Uso di interfacce: cenni a ODBC, JDBC.
Progettazione di basi di dati
- 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. Aspetti introduttivi teoria normalizzazione. Introduzione
alle forme normali e relazione con metodologia di progettazione.
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.
Laboratorio
Introduzione a
SQL Server. Esercitazioni su SQL Server relative agli aspetti trattati dal
corso.
Modalita' d'esame
-
Prove. L’esame consiste di due prove:
- una prova scritta, contenente esercizi
relativi agli argomenti affrontati nel corso.
- una prova di laboratorio, relativo allo
sviluppo di una base di dati e applicazioni per gestire la base di dati creata
in SQL Server.
La prova scritta
puo’ essere sostituita da due compitini. Il primo compitino verra’
svolto durante la settimana di interruzione delle lezioni, il secondo al
termine del corso. Ad ogni prova viene assegnato un punteggio massimo di 33
punti. Il punteggio minimo per superare la prova e’ 16.
-
Voto finale.
Il voto proposto si ottiene calcolando la
media dei voti ottenuti nelle due prove, pesata rispetto al numero di crediti
(7 per la prova scritta, 2 per la prova di laboratorio). Se il voto proposto
e’ maggiore o uguale a 18 e dalle prove non sono rilevabili gravi carenze
in qualche particolare argomento, il voto puo’ essere direttamente
registrato. Altrimenti, e’ necessario superare una prova orale.
-
Prova Orale.
Lo studente può sostenere la prova orale
in corrispondenza di alcuni appelli concordati con il docente in
concomitanza della correzione della prova scritta. Non è necessario prenotarsi
per sostenere la prova orale, basta presentarsi il giorno di inizio degli
orali. La prova consiste in domande
inerenti argomenti svolti durante il corso, in aula oppure in laboratorio.
Nel caso in cui lo studente respinga il voto finale, dopo aver sostenuto la
prova orale, saranno invalidate tutte le prove sostenute (scritto,
laboratorio ed orale).
Agli studenti che decidono di sostenere la prova orale e non la superano
saranno pure invalidate tutte le prove sostenute (scritto, laboratorio
ed orale).
-
Ripetizione delle prove e ritiro da una prova.
Lo studente ha facoltà di ripetere una prova scritta o di laboratorio, anche
se già superata in precedenza. In caso di ripetizione di una prova,
l'ultimo voto ottenuto sostituisce il precedente, anche qualora risultasse
inferiore.
Lo studente ha facoltà di ritirarsi di sua volontà durante lo
svolgimento di una qualunque prova (scritta, di laboratorio o orale). In
caso di ritiro volontario, i voti conseguiti in precedenza saranno mantenuti.
-
Validità delle prove.
I voti delle
prove scritta e di laboratorio e l'eventuale voto finale ad esse associato
restano validi per un anno solare. Nel caso uno studente lasci trascorrere
un periodo di tempo superiore senza superare o registrare l'esame, le prove
scadute dovranno essere ripetute .
Testi di riferimento
-
P. Atzeni, S. Ceri, S. Paraboschi, R. Torlone. Database Systems - Concepts, Languages and
Architectures. McGraw-Hill,
1999. Anche in italiano: Basi di dati - Concetti, linguaggi, architetture,
Mc-Graw-Hill Libri Italia. Soluzioni esercizi e
altre informazioni collegate al
libro.
- 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, 12
e 13 del libro).
- S. Bressan, B. Catania. Introduction to
Database Systems, McGraw Hill, 2004.
- R.
Ramakrishnan e J. Gehrke. Database Management Systems. Second Edition. McGraw-Hill, 2000. Soluzioni esercizi e
altre informazioni collegate al libro.
-
R. Elmasri e S.B. Navathe. Fundamentals
of database systems. Third Edition. Benjamin/Cummings, 1999.
- J.D. Ullman.Principles of database and knowledge-base systems (Vol. I). Computer Science Press, 1988.
-
C.
Batini, S. Ceri ed S.B. Navathe. Conceptual database design. Benjamin/Cummings,
1992. Anche in italiano: La progettazione concettuale dei dati, editore Franco
Angeli.
- C.J.
Date e H. Darwen. A
Guide to the SQL Standard. Addison-Wesley, 1992.
- P. Gultzan e T. Pelzer. SQL-99
Complete, Really. Miller Freeman, 1999.
- E.
Baralis, A. Belussi, G. Psaila. Basi di Dati - Temi d'esame svolti. Progetto
Leonardo. Editrice Esculapio - Bologna, 1999. (Esercizi)
Back to previous page
Please send suggestions and comments to:
Barbara Catania catania@disi.unige.it
Last Updated: 6 Ottobre, 2005
|
|