BASI DI DATI E LABORATORIO WEB
Settore: INF/01 | Codice: 435AA | Crediti: 12 | Semestre: 1-2 |
Docenti: Guidi Barbara, Michienzi Andrea |
Obiettivi di apprendimento
ConoscenzeDBMS relazionali
SQL DDL
SQL DML
Query
Query Annidate
Forme normali database
Normalizzazione di database
SQL: stored procedures, trigger. Modello ECA e database attivi.
Controllo degli accessi.
Affidabilità dei database SQL.
Progettazione di basi di dati
ll modello entità-relazioni.
Schema concettuale E-R
Algebra relazionale.
Basi di dati in forma normale
Progettazione fisica di basi di dati.
Accenni a database non relazionali.
PHP
XAMPP
PHP-MySQL
Ajax
JQuery
Modalità di verifica delle conoscenzeVerifica mediante a) + b) + c)
a) test scritto basato su formulazione di query e su normalizzazione di basi di dati per quanto
riguarda la prima parte del corso
b) Sviluppo di un progetto di un sistema three tier per la gestione di un sito web per la
produzione di blog. Alcune delle lezioni del laboratorio saranno dedicate al progetto
c) Discussione orale per valutare competenze acquisite BD e LPW
CapacitàCapacità di utilizzare i concetti presentati nello sviluppo di un sito web realistico e di
interesse teorico pratico.
In particolare:
a) capacità di sviluppare pagine dinamiche che prelevano contenuti da database
b) capacità di sviluppare pagine dinamiche che si interfacciano con utenti maliziosi che possono sottomettere dati falsi o per provocare il crash del sistema
c) capacità di integrare in un unico progetto nozioni fornite da questo corso e da quelli
precedenti di informatica
Modalità di verifica delle capacitàCapacità di formulare le query proposte nel test sulla prima parte del corso
Valutazione del progetto svolto
Verifica della effettiva ed attiva partecipazione del singolo studente allo sviluppo del progetto.
Prerequisiti
Linguaggi di programmazione
- Variabili
- Strutture dati
Costrutti di programmazione
- iterazione determinata
- iterazione indeterminata
Algoritmi e valutazione della complessità degli algoritmi
Il web da un punto di vista umanistico e tecnologico
- HTML
- CSS
- Javascript
Programma
Programma Esame Modulo Basi di Dati
- Introduzione ai database ed ai database relazionale
- Introduzione ai database relazionali
- Chiavi
- Vincoli
- Linguaggio SQL – DDL esempi
- Linguaggio SQL – DML esempi
- Query semplici e query annidate
- SQL: stored procedures, trigger. Modello ECA e database attivi.
- Controllo degli accessi.
- Delega e revoca dei diritti Transazioni.
- Le proprietà ACID e la loro garanzia.
- Concetto di locking in lettura e scrittura
- Two phase lock
- Affidabilità dei database SQL.
- File di log, ripartenza a caldo e a freddo.
- Ragioni per adozione di database SQL
- Progettazione di basi di dati.
- Overview dei passi
- Analisi dei requisiti
- ll modello entità-relazioni.
- Progettazione di uno schema concettuale E-R a partire dalle specifiche
- Strategie di progettazione dello schema concettuale. Pattern e analisi delle prestazioni.
- Strategie di progettazione per diagramma E-R
- Traduzione di schema concettuale in schema logico. Strategie ed esempi
- Algebra relazionale:
- concetti di base,
- operatori primitivi e derivati.
- Operatori di join.
- Basi di dati in forma normale.
- Forma normale di Boyce e Codd.
- terza forma normale
- algoritmo di normalizzazione,
- Progettazione fisica di basi di dati.
- Blocco fisico,
- Località
- Indici
Programma Modulo Laboratorio Programmazione Web
- Elaborazione client side e server side.
- PHP
- dichiarazioni variabili e funzioni
- vettori e stringhe
- Metodi Get e Post
- Form e trasmissione degli input
- Default deny
- Cookie e session
- PHP ADMIN
- Parametri di prestazione
- SQL injection
- Php-Mysql
- Esecuzione di query
- Accesso ai risultati
- Query buffered e unbuffered
- Politiche di caching
- JSON e Ajax
- Ajax e MySQL
- JQuery
- Esempi di applicazione in Web Applications
Bibliografia
Sito web del corso
Materiale presentato a lezione
Può essere utile un testo universitario su basi di dati relazionali e query. Un qualunque testo
contiene tutte le nozioni presentate a lezione.
Durante le lezioni verranno suggeriti alcuni testi ma tali suggerimenti non sono da intendere
come esclusivi
Non frequentanti
Utilizzare la pagina web del corso
Modalità di esame
Prova scritta sulla parte BD
Progetto per la parte LPW
Discussione del progetto per valutare competenze BD e LPW
Fonte: ESSETRE e Portale esami