Istituto di Istruzione Superiore Euganeo Istituto tecnico del settore tecnologico Istituto professionale del settore servizi socio-sanitari Istituto professionale del settore industria e artigianato PROGRAMMA DI INFORMATICA CLASSE 5AI PROFF. A. MION N. CECCON MODULO 1 SISTEMI INFORMATIVI E DATABASE IL SISTEMA INFORMATIVO E IL SISTEMA INFORMATICO Il sistema informativo e il sistema informatico Il ruolo dell informatica Le componenti di un sistema informativo e informatico Le anomalie degli archivi classici UNITÀ DIDATTICA 2 PROGETTAZIONE CONCETTUALE La progettazione concettuale Analisi Analisi del problema Specifiche concettuali per i dati Specifiche concettuali per le operazioni Il modello dei dati Lo schema statico Lo schema statico: il modello Entità-Relazione E/R Le entità Definizione di entità Generalizzazioni e specializzazioni Gli attributi Valori e domini degli attributi Attributi semplici e composti Identificatori Le associazioni 1:1 1:N N:M N-arie Ricorsive Lo schema dinamico Il modello delle operazioni Classificazione delle operazioni Aggiornamento Ordinamento Ricerca Elaborazione La progettazione di database Analisi Schema E/R Schema dinamico Esempi ed esercizi di progettazione concettuale 1
UNITÀ DIDATTICA 3 TEORIA RELAZIONALE Il modello relazionale Definizione di database Schemi logici per database Teoria relazionale Modello Relazionale Normalizzazione Algebra Relazionale Il modello relazionale Definizione analitica di relazione Tuple Relazioni Tabelle Schema logico di una relazione Schema logico relazionale di un database Dalle associazioni del modello E/R alle relazioni tra tabelle Regole di traduzione delle entità Entità Attributi composti Generalizzazioni e specializzazioni Regole di traduzione delle associazioni Associazione uno a uno Associazione uno a molti Associazione molti a molti Associazione n-aria Associazione ricorsiva Vincoli di traduzione dei dati Vincoli di tupla Vicoli di chiave Vincoli di integrità referenziale Esempi ed esercizi di progettazione relazionale La normalizzazione Prima Forma Normale Seconda Forma Normale Terza Forma Normale Esempi ed esercizi di normalizzazione Operazioni dell algebra relazionale Ridenominazione Proiezione Restrizione (Selezione) Prodotto cartesiano Join Equi-join Theta-join Join-naturale Join tra due o più relazioni Join-esterno Le operazioni della teoria degli insiemi Unione Intersezione Differenza Esempi ed esercizi di progettazione concettuale 2
UNITÀ DIDATTICA 4 DBMS Sistemi integrati per la gestione di database (DBMS) Definizione di DBMS Linguaggi interni Procedurali Dichiarativi (Non Procedurali) Linguaggio DDL Linguaggio DML Linguaggio DCL Linguaggio SQL Linguaggi esterni Organizzazione fisica dei database Il file principale Il registro delle transazioni Il file indice Indipendenza logica e fisica dei dati Esempi ed esercizi di progettazione DataBase MODULO 2 SQL SQL E LA DEFINIZIONE DEI DATI Il ruolo di SQL Caratteristiche principali del linguaggio Come studiare un linguaggio per database DDL DML DCL Notazione per la sintassi del linguaggio Alfabeto, regole lessicali e struttura di un programma sorgente Sistemi informativi e database nell SQL Elementi di un database SQL Tabelle Viste Indici Creazione di un nuovo database Le tabelle Creazione di una tabella CREATE TABLE Definizione delle colonne La clausola IDENTITY Modifica dello schema del database ALTER TABLE Definizione dei vincoli di integrità dei dati Integrità dei dati Vincoli di integrità su una colonna Valori di default DEFAULT Vincoli sui valori di una colonna CHECK Colonne con valori sconosciuti NULL 3
Vincoli di integrità in una tabella Vincolo di chiave primaria PRIMARY KEY Vincolo di unicità UNIQUE Vincolo su più colonne con CHECK Vincoli di integrità referenziale FOREIGN KEY Casi particolari di applicazione dell integrità referenziale UNITÀ DIDATTICA 2 SQL E LE INTERROGAZIONI Aggiornamento dei dati del DataBase Inserimento INSERT INTO Aggiornamento UPDATE Cancellazione DELETE Elementi di base di una query L istruzione SELECT Definizione dei dati nelle interrogazioni Ridenominazione delle colonne AS Ridenominazione di tabelle AS Gestione dei dati duplicati ALL DISTINCT Prodotto di più tabelle Definizione delle condizioni di ricerca nel WHERE Livelli di priorità degli operatori Operatori di confronto Operatori logici Operatori di confronto speciali BETWEEN LIKE IN IS NOT NULL Query con parametri di ingresso Ordinamento, elaborazione e raggruppamento dei dati Ordinamento dei dati ORDER BY Elaborazione dei dati Colonne calcolate Funzioni di aggregazione Raggruppamento dei dati GROUP BY La clausola HAVING Operazioni sugli insiemi UNION INTERSECT EXCEPT SubQuery Le sottointerrogazioni Subquery in colonne calcolate Condizioni di ricerca con subquery Con operatori di confronto Con ANY ALL Con IN EXISTS 4
Viste Definizione e scopo di una vista Creazione di una vista CREATE VIEW Cancellazione di una vista DROP VIEW Costruzione di interrogazioni complesse con le viste Le viste aggiornabili MODULO 3 SISTEMI INFORMATIVI DISTRIBUITI SISTEMI INFORMATIVI DISTRIBUITI Concetti di base Passaggio da un sistema centralizzato a uno distribuito Fattori per la scelta di una organizzazione distribuita Throughput Response time Disponibilità (Availability) Scalabilità (Scalability) Affidabilità Sicurezza Basi di dati distribuite Definizione di base di dati distribuita Proprietà di una base di dati distribuita Memorizzazione su più server Organizzazione sulla base di uno schema logico Protezione dei dati: affidabilità e sicurezza Trasparenza per gli utenti Schemi logici distribuiti Come si costruisce il modello di un database distribuito Frammentazione Replicazione MODULO 4 TRANSAZIONI E SICUREZZA TRANSAZIONI Le transazioni Definizione di transazione Stati di avanzamento una transazione Il giornale delle modifiche (Database Log File) Le proprietà ACID di una transazione Il trigger Le transazioni concorrenti Definizione di transazioni concorrenti Schedulazioni e relativi problemi Schedulazioni serializzabili Protocollo di bloccaggio a due fasi Stallo (deadlock e starvation) e sua risoluzione 5
UNITÀ DIDATTICA 2 SICUREZZA Il ripristino dei dati Tipi di memoria e il problema del ripristino Crash della piattaforma e checkpoint Rottura del disco I livelli di RAID (Redundant Array of Inexpensive Disks) RAID 0 RAID 1 RAID 5 RAID 0+1 Backup e restore Strategie di backup e di restore Backup completo Backup differenziale Backup incrementale Backup parziale Backup del registro delle transazioni LABORATORIO MySQL PHP CSS Strutture 3-TIER Elementi di Usabilità Area di Progetto LIBRO DI TESTO Informatica DataBase Autore: F. Scorzoni Casa Editrice: Loescher Dispense Documentazione online Este, 6 giugno 2015 I rappresentanti di classe Gli insegnanti Prof. 1. A. Mion Prof. 2. N. Ceccon 6