scuola interuniversitaria siciliana di specializzazione per linsegnamento secondario classe di...

44
SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER L’INSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti Software - - Per Database - Docente: Prof. Cantone

Upload: edoardo-roberti

Post on 01-May-2015

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER

L’INSEGNAMENTO SECONDARIO

Classe di Concorso: 42A

Massimo Mancino

MODULO DIDATTICO

- Ambienti Software -

- Per Database -

Docente: Prof. Cantone

Page 2: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Il modulo, proposto per una quinta classe Indirizzo Informatico, mira a presentare agli alunni due strumenti software per DBMS (SQL e MS ACCESS).

Ambienti software per database

Page 3: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Unità didattica 1 Il linguaggio SQL

Unità didattica 2 Microsoft Access

Composizione del modulo

Page 4: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Unità didattica 1

Il Linguaggio SQL

Page 5: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Gli studenti dovranno dimostrare di avere:

Prerequisiti

Nozioni di entità, attributo, chiave, associazione

Conoscenza del modello relazionale e degli operatori relazionali

Caratteristiche generali di un sistema di gestione di basi di dati

Caratteristiche generali di un linguaggio per basi di dati

Page 6: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Competenze

Applicare correttamente i principi del modello relazionale

Rappresentare le operazioni relazionali

Codificare e validare interrogazioni in linguaggio SQL

Page 7: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

ContenutiComandi per la definizione e la manipolazione delle tabelle

Comandi per le interrogazioni

Funzioni di aggregazione

Ordinamenti e raggruppamenti

Interrogazioni nidificate

Comandi per la sicurezza e l’integrità dei dati

Page 8: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

LEZIONE FRONTALE

LEZIONE DIALOGATA

Metodologie

Page 9: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

AULA

LABORATORIO

Spazi

AZIENDA

Page 10: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

LIBRO DI TESTO ED APPUNTI

COMPUTER

LAVAGNA LUMINOSA

PROIETTORE

Strumenti

Page 11: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Le verifiche sono periodiche e costanti, tese alla valutazione sia del percorso nella sua globalità che di una parte del medesimo.

Esse prevedono varie tipologie:

Colloqui individuali

Interventi di vario genere

Questionari e Test (strutturati e semistrutturati)

Prove di laboratorio

Verifiche

Page 12: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Sia di tipo formativo e quindi in relazione all’applicazione, all’impegno, all’attenzione, al metodo di lavoro che ogni studente avrà mostrato durante l’attività didattica

La valutazione sarà:

Sia di tipo sommativo, ricavata dalla misurazione delle varie prove in cui gli studenti dovranno dimostrare di:

avere acquisito conoscenze e informazioni circa i contenuti

avere maturato abilità e competenze specifiche alla disciplina

Valutazione

Page 13: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Unità Didattica

Ore di Lezione

Ore di Laboratorio

Ore di Verifica

Ore di Recupero e/o Potenziamento

U.D. 1 20 20 8 12

Tempi

Page 14: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

StoriaStructured Query Language(solitamente pronunciato "sequel").

Quando i database relazionali proliferarono nel corso degli anni Ottanta, SQL fu codificato per l'utilizzo nell'ambito dell'Information Technology commerciale. Nel 1986, l'American National Standards Institute (ANSI) e l'International Standards Organization (ISO) stabilirono il primo standard del linguaggio.

La "vita" di SQL inizia nel 1970 presso i laboratori di ricerca IBM di San Jose, dove E. F. Codd e altri svilupparono il modello di database relazionale che diede origine al sistema noto come DB2.

Page 15: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

StoriaLe revisioni successive dello standard, nel 1989 e nel 1992, aggiunsero il controllo di base dell'integrità dei dati e le funzioni per la loro definizione e manipolazione.

La specifica di SQL del 1992 è la versione più attuale, benché il nuovo aggiornamento SQL3, conosciuto anche come SQL-99, sia in corso di progettazione da qualche tempo. Gli sforzi verso la definizione dello standard SQL3 sono rivolti verso l’integrazione di questo linguaggio nelle basi di dati orientati agli oggetti e il supporto per sistemi basati sulla conoscenza.

Page 16: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

CaratteristicheLinguaggio ad alto livello

Paradigma di programmazione logicoSta al sistema di gestione del database analizzare la richiesta in rapporto alla propria struttura e stabilire quali operazioni sia necessario eseguire per recuperare l'informazione richiesta

Si presta alle architetture client/server

Può essere utilizzato da un linguaggio strutturale (Hosting)

Page 17: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Datatype standard

Character(n) Stringa di lunghezza n (da 1 a 15000)

Date Data nella forma MM/GG/AA

Time Ora nella forma HH:MM

Integer Numero intero con precisione 10

Smallint Numero intero con precisione 5

Real Numero reale con mantissa di precisione 7

Float Numero reale con mantissa di precisione 15

Page 18: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

IstruzioniDDL: CREATE, DROP e ALTER TABLE

DML: INSERT, DELETE e UPDATE

TRANSAZIONI: COMMIT, ROLLBACK e SAVEPOINT

DQL: SELECT

SICUREZZA: GRANT e REVOKE

Page 19: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

CREATE

Crea una nuova tabella nella base di dati

CREATE TABLE …

Crea una nuova vista nella base di dati

CREATE VIEW …

Crea un nuovo indice su uno o più attributi di una tabella

CREATE INDEX …

Page 20: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

CREATE TABLE

CREATE TABLE table_name( field1 type1 [default] [constraint1], field2 type2 [default] [constraint2], … fieldn typen [default] [constraintn]);

Per creare una nuova tabella nella base di dati:

Page 21: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Esempio - CREATE TABLEDiagramma Entità-Relazione

Magazzino(ID, Descrizione);Prodotti(Codice, Descrizione, Prezzo);Contiene(ID_Magazzino, Codice_Prodotto);

Modello Relazionale

Page 22: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Esempio - CREATE TABLEcreate table Magazzino( id integer primary key, descrizione char[100]);

create table Prodotti( codice integer primary key, descrizione char[100], prezzo integer, id_magazzino integer, foreign key (id_magazzino) references Magazzino(id) );

Master

Child

Page 23: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

CREATE TABLE…AS…

CREATE TABLE table_name AS SELECT filed1, field2, …, filedn

FROM table_name WHERE condizione;

Per creare una nuova tabella da una già esistente nella basi di dati

Page 24: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

DROP

Rimuove la tabella dalla base di dati e i relativi indici

DROP TABLE table_name;

Rimuove la vista dalla base di dati

DROP VIEW view_name;

Rimuove l’indice dalla rispettiva tabella

DROP INDEX index_name;

Page 25: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

ALTER TABLE

Aggiunge una o più colonne alla tabella

ALTER TABLE table_name ADD (col_name type [constraint]);

Modifica il tipo di una o più colonne della tabella

ALTER TABLE table_name MODIFY (col_name type [constraint]);

Rimuove una o più colonne della tabella

ALTER TABLE table_name DROP (col_name);

Page 26: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Restrizioni

Non possiamo modificare una colonna che contiene valori NULLI in una definita NOT NULL

Non possiamo aggiungere una colonna NOT NULL a meno che la tavola non sia vuota

Non possiamo diminuire la grandezza di una colonna a meno che questa non sia vuota

Page 27: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

INSERT

INSERT INTO table_name VALUES (V1, V2, …, VN);

Inserisce la n-upla (v1, …, vn) nella tabella.

INSERT INTO table_name (f1, …, fn) SELECT field1, …, fieldin

FROM table1, …, tablem;Inserisce una selezione di uno o più records nella tabella.

Page 28: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

DELETE

DELETE FROM table_name WHERE condizione;

Per cancellare uno o più record da una tabella:

Per svuotare una tabella in maniera definitiva:

TRUNCATE TABLE table_name;

Page 29: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

UPDATEUPDATE table_name SET field1 = value1, field2 = value2, … fieldn = valuen

WHERE condition;

UPDATE table_name SET (field1, field2, …,fieldn) = (select fi1, …, fin

from table1, …, tablem

where condition) WHERE condition;

Deve restituireuna riga!

Page 30: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Transazione

E’ un’unità logica di lavoro

E’ una sequenza di comandi SQL che il DBMS tratta comeuna singola entità

TRANSAZIONETRANSAZIONE

COMMITCOMMIT COMMITCOMMIT

Cos’è una transazione?

Page 31: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Transazione

Quando comincia una transazione ?Quando comincia una transazione ?

Implicitamente all’apertura di una sessione del DBMS

Implicitamente quando finisce la transazione precedente

Page 32: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Transazione

Quando finisce una transazione ?Quando finisce una transazione ?

Nel momento in cui le modifiche sono rese permanenti da:

Un COMMIT esplicitoUna normale chiusura di sessioneUn comando DDL

o quando le modifiche vengono annullate da:

Un ROLLBACK esplicitoUn’ uscita brutale dal programmaUna caduta di sistema

Page 33: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

TransazioneCosa succede?Cosa succede?

Finchè non confermiamo:

possiamo vedere le modifiche nelle queries

gli altri utenti non possono vederle

possiamo cancellare la transazione

o solo parte di essa

TRANSAZIONETRANSAZIONE

COMMITCOMMIT COMMITCOMMIT COMMITCOMMITo ROLLBACKo ROLLBACK

Page 34: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

SELECTselect … from … where …

Seleziona tutti i dipendenti che abitano in provincia di Milano

select * from Personale where Prov = ‘MI’;

Seleziona tutte le province del personale:

select distinct Prov from Personale;

Page 35: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Condizioni di ricerca

Seleziona l’elenco dei dipendenti che sono stati assunti trail 3/3/97 e il 3/3/98

select Cognome, Nome, Funzione from Personale where assunzione between 03/03/97 and 03/03/98;

Seleziona i dipendenti della provincia di Milano e di Comoselect Cognome, Nome, Funzione from Personale where Prov IN (‘MI’, ‘CO’);

Page 36: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Condizioni di ricercaSelezionare gli impiegati il cui cognome inizia per ‘Ros’

Select Cognome, Nome from Personale where Cognome like ‘Ros%’;

Page 37: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Interrogazioni nidificate

Seleziona l’elenco dei dipendenti che hanno uno stipendio inferiorealla media:

Select Cognome, Nome from Personale where Stipendio < (Select AVG(Stipendio) from Personale);

Page 38: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Ordinamento

Seleziona l’elenco dei dipendenti ordinandolo per cognome:

Select Cognome, Nome, Funzione from Personale order by Cognome (ASC);

Page 39: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Aggregazioni

Seleziona la lista delle funzioni dei dipendenti con la somma deglistipendi e il numero di dipendenti appartenenti alle varie funzioni:

Select Funzione, SUM(Stipendio), count(*) from Personale group by Funzione;

Page 40: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Esercizio

All’inizio dell’anno scolastico un rappresentante di libri vuole avere una quadro riassuntivo dell’anno scolastico precedente riguardo i libri adottati nelle varie classi dei vari istituti.

In particolare, si vuole avere a disposizione un report dove per ogni libro sia associato l’istituto ed il numero di classi (dell’istituto) che ha adottato il libro.

Page 41: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Esercizio

Page 42: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

EsercizioCODICE TITOLO DESCR.

ID ANNO SEZIONE ID_ISTITUTO

ID NOME DESCR.

CODICE_LIBRO ID_CLASSE ANNO

Libri

Adottati

Classe

Istituto

2002

Page 43: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

Esercizioselect titolo, istituto, numero from (select libri.titolo as titolo, istituto.nome as istituto, count(*) as numero from libri, classi, adottati, istituto where libri.codice = adottati.codice_libro and adottati.id_classe = classi.id and classi.id_istituto = istituto.id and adottati.anno = 2002 group by titolo, istituto) order by titolo, istituto;

Page 44: SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti

FINE