Docente
|
PULVIRENTI ALFREDO
(programma)
Introduzione alle basi di dati: modelli dei dati, generalità sui DBMS.
Il modello dei dati: Il modello Relazionale. Relazioni, attributi, istanze di relazione, tuple. Vincoli di integrità, concetto di chiave. Algebra relazionale: operatori fondamentali e derivati.
Il linguaggio SQL (Structured Query Language). Il linguaggio di definizione dei dati: definizione di tabelle, domini, indici. Specifica di semplici vincoli di integrità. Il linguaggio di interrogazione: operatori di join-selezione-proiezione, operatori aggregati, operatore di raggruppamento. Interrogazioni nidificate e correlate, operatori insiemistici. Query ricorsive. Il linguaggio di manipolazione dei dati: inserimento, eliminazione e modifica di tuple. Definizione di viste, vincoli di integrità generici. Controllo dell'accesso ad una base di dati. Basi di dati attive.
Progettazione delle basi di dati: Progettazione concettuale; Progettazione logica; Progettazione fisica
Normalizzazione delle basi di dati: Anomalie. Dipendenze Funzionali. Decomposizioni di Schemi : che conservano i dati, che conservano le dipendenze funzionali. Forme Normali: di Boyce-Codd e 3NF.
Basi di dati XML
Introduzione ai NoSQL database.
Sistemi: MySQL (interfacce php/javaScript/Ajax). CouchDB, MongoDB.
Atzeni,Ceri,Paraboschi, Fraternali, Torlone, Basi di Dati, McGraw-Hill.
Albano-Ghelli-Orsini, Fondamenti di basi di dati, Zanichelli.
|