BASI DI DATI E LABORATORIO WEB

Settore: INF/01Codice: 435AACrediti: 12Semestre: 1-2
Docenti: Guidi Barbara, Michienzi Andrea

Obiettivi di apprendimento

Conoscenze

DBMS 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 conoscenze

Verifica 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
  1. Chiavi
  2. 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.
  1. Delega e revoca dei diritti Transazioni.
  2. Le proprietà ACID e la loro garanzia.
  3. Concetto di locking in lettura e scrittura
  4. Two phase lock
  • Affidabilità dei database SQL.
  1. File di log, ripartenza a caldo e a freddo.
  • Ragioni per adozione di database SQL
  • Progettazione di basi di dati.
  1. Overview dei passi
  2. 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:
  1. concetti di base,
  2. operatori primitivi e derivati.
  3. Operatori di join.
  • Basi di dati in forma normale.
  1. Forma normale di Boyce e Codd.
  2. terza forma normale
  3. algoritmo di normalizzazione,
  • Progettazione fisica di basi di dati.
  1. Blocco fisico,
  2. Località
  3. Indici

 

Programma Modulo Laboratorio Programmazione Web

  • Elaborazione client side e server side.
  • PHP
  1. dichiarazioni variabili e funzioni
  2. vettori e stringhe
  3. Metodi Get e Post
  4. Form e trasmissione degli input
  5. Default deny
  6. Cookie e session
  7. PHP ADMIN
  8. Parametri di prestazione
  9. SQL injection
  • Php-Mysql
  1. Esecuzione di query
  2. Accesso ai risultati
  3. Query buffered e unbuffered
  4. 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