Programma effettivamente svolto
TEORIA E PROGETTAZIONE DELLE BASI DI DATI CONCETTI GENERALI SULLE BASI DI DATI
- Dati e loro significato: intensione ed estensione
- Basi di dati (DB) e sistemi di gestione delle basi di dati (DBMS)
- Livelli di astrazione, classi di utenza e linguaggi di un DBMS
LA MODELLAZIONE DEI DATI NELLA PROGETTAZIONE CONCETTUALE: IL MODELLO E/A
- La progettazione concettuale: i diagrammi entità-associazioni
- La modellazione dei dati: entità, tipi di entità, attributi e chiavi
- Le associazioni fra entità: proprietà e tipi di associazioni
- I vincoli di integrità
- Gerarchie di entità (ISA)
LA PROGETTAZIONE LOGICA: IL MODELLO RELAZIONALE
- Struttura dei dati: le relazioni e gli schemi di relazione, i domini, le chiavi, i vincoli di integrità
- Traduzione dei dati dal modello E/A verso il modello relazionale (mapping):
rappresentazione di entità, di attributi composti e multipli, rappresentazione di associazioni 1:N ( e 1:1), N:M e di gerarchie ISA
- Operazioni relazionali: unione, intersezione, differenza, selezione, proiezione, prodotto cartesiano, join, left e right join, self join.
- Problema della ridondanza e anomalie.
- La normalizzazione: forme normali (1FN, 2FN, 3FN) e normalizzazione
LINGUAGGI DELLE BASI DI DATI E PER LO SVILUPPO DI APPLICAZIONI WEB LINGUAGGIO SQL
- Caratteristiche generali e tipi di dati
- Istruzioni per la definizione dello schema relazionale (DDL): CREATE, DROP, ALTER
- Operazioni relazionali in SQL: l’istruzione SELECT, funzioni di aggregazione (min, max, sum, avg, count), ordinamenti, raggruppamenti, condizioni di ricerca (LIKE, IN, NOT IN)
- Query annidate
- Istruzioni per la manipolazione dei dati (DML): INSERT, UPDATE, DELETE
- istruzioni per la sicurezza (DCL): GRANT e REVOKE
- Le viste in SQL
- Funzioni per gestire data ed ora LINGUAGGIO HTML5
- Elementi di base e tabelle
- Form per l’interazione con i programmi php attraverso un browser
- Link parametrizzati
- Elementi di una form: text, password, date, textarea, menù a tendina, bottoni radio, checkbox, campi hidden, upload di file, validazione delle form in javascript (cenni).
PROGRAMMAZIONE LATO SERVER: LINGUAGGIO PHP
- Confronto con il linguaggio C
- Caratteristiche generali e tipi di dati
- variabili, funzioni per il controllo dei tipi, funzioni per la gestione di stringhe e di array
- sintassi delle istruzioni
- array numerici e associativi uni e multidimensionali
- funzioni per l’elaborazione di array
- funzioni di I/O per l’accesso ai file ed alle directory
- persistenza dei dati:, stringhe di query, variabili di sessione
- Funzioni per la gestione di stringhe
- Funzioni per l’invio di mail, per criptare le password.
- html e php: array $_POST, $_GET, $_REQUEST
- Gestione delle sessioni per la persistenza delle informazioni: array $_SESSION PHP E I DATABASE
- Funzioni per la connessione ad un server MySQL e per l’esecuzione di query (mysql_connect, mysql_close, mysql_query, mysql_fetch_array, mysql_num_rows, etc.)
- Realizzazione di applicazioni php per l’accesso a database MySQL mediante un web server Apache su server Linux
Le insegnanti Valeria Gusulfino – Maria Josè Cotroneo