1 modulo gestione informazione. 2 termine ‘informatica’ informazione automatica elaboratore...

34
1 Modulo Gestione Informazione

Upload: andreina-de-rossi

Post on 03-May-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

1

Modulo

Gestione Informazione

Page 2: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

2

Termine ‘informatica’

• informazione

• automatica

• elaboratore

• automatismo

• dati

due parole

tre concetti

“L’elaborazione dei dati, attraverso il computer, è una elaborazione automatica; Le operazioni una volta avviate, vengono svolte attraverso un meccanismo in grado di portarle a termine anche senza l’intervento diretto dell’uomo. Ovviamente il sistema di elaborazione deve in qualche modo “conoscere” il processo che porta dai dati di partenza al risultato finale.”

Page 3: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

3

Struttura elaboratore• unità di ingresso: per l’inserimento dei dati

• unità di elaborazione: per effettuare manipolazioni dei dati

• unità di uscita: per comunicare i dati all’esterno

• unità di memoria di massa: per la conservazione di dati

unità di elaborazione

unità di ingressounità di uscita

unità di memoria di massa

Page 4: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

4

Elaboratore: macchina programmabile

All’elaboratore vengono forniti:• dati sui quali operare• insieme di azioni da svolgere• modalità di svolgimento

programma

programma

elaboratore risultati

dati

Page 5: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

5

L’elaboratore ‘tratta’ dati

L’uomo interpreta i dati ed ottiene informazioni.

“Il dato in sé (indicatore) , da solo non ha alcun senso. Perché il dato assuma significato e quindi si trasformi in informazione deve essere associato ad almeno un descrittore.”

– 75 da solo non ha alcun senso, lo assume se lo associamo ad una unità di misura, ad esempio km

– Le cifre 0733491026 non comunicano nulla se non sappiamo che si tratta di un numero telefonico, …

• Cristoforo Colombo• 125

Non ci dicono nulla se non pensiamo al nome di una via e ad un numero civico

dato vs informazione

Page 6: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

6

• dati: elementi che derivano dai fenomeni e dagli oggetti.

–dati elementari, dati “grezzi”

• informazioni: dati selezionati, elaborati, confezionati, presentati e distribuiti in modo tale da avere un significato ed essere di utilità per un particolare compito o attività

1.http://www2.gest.unipd.it/labtesi/eb-didattica/ERCE/KM.ppt

Page 7: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

7

• Dati:– Mario; 12,00; 36,5; 21,00; 38,5

• Informazione– Mario: ore 12.00, febbre: 36.5; ore 21.00, febbre: 38.5

1.http://www2.gest.unipd.it/labtesi/eb-didattica/ERCE/KM.ppt

Page 8: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

8

• Dati:– FF150, 1500, 1200

• Informazione:– Codice: FF150, richiesta: 1500 pezzi,disponibilità: 1200

pezzi

1.http://www2.gest.unipd.it/labtesi/eb-didattica/ERCE/KM.ppt

Page 9: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

9

• Un dato che assume significato diventa informazione

• Informazione = dato + semantica*

* Significato che il dato assume in un particolare contesto di riferimento

• L’aggregazione di più informazioni genera, a sua volta, altre informazioni

Page 10: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

10

km da_citta a_citta

255 Roma Ancona

500 Ancona Venezia

300 Napoli Foggia

90 Macerata Spinetoli

………… ……….. …………

km

255

500

300

90

…………

L’aggregazione di più informazioni genera, altre informazioni

Page 11: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

11

Una base di dati è un insieme di dati organizzati secondo uno schema prefissato

La progettazione si sviluppa attraverso tre fasi:1° fase: progettazione concettuale2° fase: progettazione logica3° fase: progettazione fisica

Ciascuna fase restituisce un schema di dati:

progettazione concettuale schema concettualeprogettazione logica schema logicoprogettazione fisica schema fisico

Lo schema è il risultato di una progettazione

Page 12: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

12

Progettazione concettuale

Si parte da una descrizione verbale del problema, fatta da un esperto, del problema in questione. Dalla descrizione verbale si deve ottenere uno schema, chiamato Entità-Relazioni (Entity-Relationships), che rappresenta le principali entit๠nel dominio del problema, gli attributi2 delle entità e le relazioni tra le entità

Esempio: rappresentare in un diagramma E-R l’insieme degli studenti di una Università, prendendo in considerazione i Corsi di Laurea e le Dipartimenti di appartenenza.Le entità sono: studenti, corsi_laurea, dipartimenti.Le entità hanno degli attributi che le definiscono:studenti: matricola, cognome, nome, indirizzodipartimenti: codice_dipartimenti, nome, indirizzocorsi_laurea: codice_corso_laurea, nome, indirizzoLe entità sono rappresentate nel seguente modo:

[1] oggetto del mondo reale distinguibile da altri oggetti

cod_f

[2] gli attributi rappresentano le proprietà elementari delle entità

dipartimenti

Page 13: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

13

Fra gli insiemi esistono delle relazioni; esse possono essere: 1:1 ad un elemento in un insieme corrisponde un solo elemento nell’altro insieme e viceversa;

1:n ad un elemento del primo insieme corrispondono n elementi nel secondo e ad un elemento nel secondo corrisponde un solo elemento nel primo;

n:m ad una entità del primo insieme corrispondono n entità nel secondo e ad una entità nel secondo corrispondono m entità nel primo.

Nel nostro esempio:fra dipartimenti e corsi_laurea 1:n, ad un dipartimento corrispondono più corsi di laurea; il viceversa è 1:1, un corso di laurea è di un dipartimento; fra corsi_laurea e studenti 1:n, ad un corso di laurea corrispondono più studenti; il viceversa è 1:1, uno studente è di un corso di laurea;

Page 14: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

14

Il diagramma E-R risultante è il seguente

codice_dipartimento

1 ndipartimenti

Page 15: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

15

Una relazione n:m (ad esempio fra studenti e materie) viene rappresentata nel seguente modo:(non sono stati riportati tutti gli attributi dell’entità studenti)

Uno studente può studiare più materie e una materia può essere studiata da più studenti.

Page 16: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

16

1 n

n

m

E-R finale, prendendo in considerazione anche l’insieme entità ‘esami

dipartimenti dc

Page 17: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

17

Progettazione logicaNella seconda fase della progettazione (progettazione logica), si sceglie il tipo di database che si vuole utilizzare per rappresentare la nostra realtà; è possibile scegliere fra database:gerarchicoreticolarerelazionale.Il modello che qui prendiamo in considerazione è quello relazionale. In esso il database è rappresentato come un insieme di tabelle chiamate ‘relazioni’. Relazione: tabella bidimensionale (chiamata semplicemente tabella).Una tabella è formata da righe chiamate record.Ciascun record è formato da campi.Esempio:

Page 18: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

18

Nella progettazione logica occorre esplicitare le relazioni fra le entità individuate nel modello E-R.

Una relazione uno-a-uno

fra due tabelle viene realizzata introducendo, come attributo, in una qualsiasi delle due tabelle la chiave[1] dell'altra.

[1] Chiave: campo del record il cui valore identifica in modo univoco il record nella tabella

tab. nazioni

cod_naz nazione

10 italia

20 francia

30 inghilterra

tab. capitali

cod_cap capitale

1 parigi

2 londra

3 roma

tab. nazioni

cod_naz nazione

10 italia

20 francia

30 inghilterra

tab. capitali

cod_cap capitale cod_naz

1 parigi 20

2 londra 30

3 roma 10

Page 19: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

19

Una associazione uno-a-molti

tabella dipartimenti

codice_dipart nome indirizzo

10Scienze della Formazione …………

….

20 Giurisprudenza …………

30 …………

40 …………

50 …………

tabella corsi_laurea

codice_corso_laurea

nomeindirizzo

10Consulente del lavoro e per l'impresa  

……………

20 Operatore giudiziario  ……………

30 Scienze del servizio sociale …………

40 Scienze giuridiche ……………

50 Scienze dell’amministrazione

60Scienze dell’educazione e della formazione

70Formazione e management dei sistemi turistici

80Formatore per l'e-learning e la multimedialità

viene realizzata introducendo, come attributo, nella tabella con cardinalità 'N' la chiave della tabella con cardinalità '1'. Ogni record della tabella 'N' avrà i suoi campi ed un valore che esprime l'associazione con il record corrispondente dell'altra tabella.

Page 20: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

20

tabella dipartimenti

codice_dipart nome indirizzo

10 Scienze della Formazione …………

20 Giurisprudenza …………

30 …………

40 …………

50 …………

tabella corsi_laurea

codice_corso_laurea

nomeindirizzo

codice_dipart

10Consulente del lavoro e per l'impresa  

……………20

20 Operatore giudiziario  …………… 20

30Scienze del servizio sociale

…………20

40 Scienze giuridiche …………… 20

50Scienze dell’amministrazione

20

60Scienze dell’educazione e della formazione

10

70Formazione e management dei sistemi turistici

10

80Formatore per l'e-learning e la multimedialità

10

Page 21: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

21

Una relazione molti-a-molti

tab. studenti

matricola studente1

10 Bianchi

20 rossi

30 neri

40 verdi

50 viola

tab. materie

cod_mater denominazione_mat

1 materia1

2 materia2

3 materia3

4 materia4

5 materia5

fra due tabelle viene realizzata introducendo un'apposita tabella, i cui record contengono le chiavi dei record che si corrispondono nelle due tabelle.

tab. studenti

matricola studente

10 Bianchi

20 rossi

30 neri

40 verdi

50 viola

..... ....

.... .....

tab. materie_studenti

matricola cod_mater

10 1

20 3

30 5

10 4

10 5

20 2

50 1

40 2

20 1

tab. materie

cod_mater denominazione_mat

1 materia1

2 materia2

3 materia3

4 materia4

5 materia5

.... ....

[1] facendo riferimento agli attributi della entità ‘studenti’, descritta in precedenza, avremmo dovuto inserire gli attributi: cognome, nome, indirizzo

Page 22: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

22

Il diagramma per il nostro esempio (materie, studenti, corsi di laurea, dipartimenti) sarà quindi:

Mettendo a confronto questo diagramma con quello realizzato nella progettazione concettuale, si notano i nuovi attributi ‘codice_dipart’, in ‘corsi_laurea’, ‘codice_corso_laurea’, in ‘studenti’, infine i nuovi attributi ‘matricola’ e ‘cod_mater’ in ‘stu_mat’; tutti questi attributi sono stati inseriti per esplicitare le associazioni.

dipartimenti dc codice_dipart

codice_dipart

Page 23: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

23

Schema restituito dalla progettazione concettuale

Schema restituito dalla progettazione logica

notare

dipartimenti

dipartimenti

codice_dipart

codice_dipart

Page 24: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

24

Vengono definite le strutture di memorizzazione dei dati:

Progettazione fisica

dipartimenti(codice_dipart: testo(20 ch1), nome: testo(100 ch), indirizzo: testo(255 ch))

corsi_laurea(codice_corso_laurea: testo(20 ch), nome: testo(100 ch), indirizzo: testo(255 ch))

studenti(matricola: testo(10 ch), cognome: testo(80 ch), nome: testo(60 ch), indirizzo: testo(255 ch))

materie(cod_mater: intero, descrizione_mat: testo(200 ch))

stu_mat( cod_mater: intero, matricola: testo(10 ch))

Si tenga presente che quando il database viene creato su calcolatore occorre:

1. creare le tabelle

2. nella creazione delle tabelle occorre specificare l’elenco dei campi e, per ciascun campo, quale dato potrà contenere(insieme di caratteri, numero intero o con la virgola, valore logico, data, ..)

[1] ch sta per carattere, intero per numero intero

Page 25: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

25

Fasi della progettazione:

dipartimenti(codice_dipart: testo(20 ch1), nome: testo(100 ch), indirizzo: testo(255 ch))

corsi_laurea(codice_corso_laurea: testo(20 ch), nome: testo(100 ch), indirizzo: testo(255 ch))

studenti(matricola: testo(10 ch), cognome: testo(80 ch), nome: testo(60 ch), indirizzo: testo(255 ch))

materie(cod_mater: intero, descrizione_mat: testo(200 ch))

stu_mat( cod_mater: intero, matricola: testo(10 ch))

1. fase:progettazione concettuale;restituisce modello concettuale

2. fase:progettazione logica;restituisce modello logico

3. fase:progettazione fisica;restituisce modello fisico

codice_dipart

codice_dipartdipartimenti

Page 26: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

26

Dopo aver progettato il db, utilizzando un DBMS (Data Base Management System), si passa alla sua costruzione sull’elaboratore.

Un DBMS per un database di tipo relazionale è essenzialmente costituito da tre insiemi di comandi:

DDL:Data Definition Language;

DML:Data Manipulation Language;

DCL:Data Control Language.

DDL serve a creare, modificare o eliminare gli oggetti in un database.

Sono i comandi DDL a definire la struttura del database e quindi dei dati ivi contenuti. Ma non fornisce gli strumenti per modificare i dati stessi: per tale scopo di usa il DML1

DML fornisce i comandi per inserire, modificare, eliminare o leggere i dati all'interno delle tabelle di un database. La struttura di questi dati deve già essere stata definita tramite il DDL2.

DCL permette di gestire gli utenti e i permessi.

[1][2] http://it.wikipedia.org/wiki/SQL

Page 27: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

27

Come esempio vediamo alcuni comandi del secondo insieme: selezione(restrizione), proiezione, join.La selezione, su una tabella, restituisce un insieme di righe che è la totalità o un sottoinsieme delle righe della tabella che si interroga. L’insieme di righe restituito è determinato da un criterio di selezione. Il criterio di selezione è una espressione logica che viene valutata (vero/falso) su ciascuna riga: le righe per cui l’espressione vale “vero” sono selezionate e fanno parte del risultato, le altre, per cui l’espressione vale “falso” sono scartate. Se si vuole che l’insieme sia l’intera tabella si omette il criterio.Esprimiamo i comandi in linguaggio naturale ricordando che, dovendo interagire concretamente con un dbms relazionale (ad es. Access), i comandi vanno scritti utilizzando il linguaggio SQL (Structured Query Language)

Esempio 1ricercare nella seguente tabella ‘studenti_con_esami’, gli studenti con media maggiore di 21.

Matricola Cognome Nome Esami_sost media

100 bianchi nicola 10 25

200 verdi franca 14 21

300 rossi enrica 10 28

400 neri mario 18 29

500 viola andrea 5 24

Il comando da impostare è il seguente:

seleziona matricola, cognome, nome, esami_sost, mediada studenti_con_esamidove media>21

e la tabella che verrà restituita sarà:

Matricola Cognome Nome Esami_sost media

100 bianchi nicola 10 25

300 rossi enrica 10 28

400 neri mario 18 29

500 viola andrea 5 24

Page 28: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

28

Il comando da impostare è il seguente:

seleziona matricola, cognome, nome, esami_sost, mediada studenti_con_esami

e la tabella restituita sarà l’intera tabella ‘studenti_con_esami’

Esempio 2Visualizzare tutti gli studenti della tabella ‘studenti_con_esami’.

Matricola Cognome Nome Esami_sost media

100 bianchi nicola 10 25

200 verdi franca 14 21

300 rossi enrica 10 28

400 neri mario 18 29

500 viola andrea 5 24

Nel primo caso è stato impostato il criterio di selezione (‘dove media>21’); nel secondo non è stato impostato.

La struttura del comando ‘seleziona’ è la seguente:

seleziona <elenco campi da visualizzare>da <tabella presa in considerazione>dove <criterio di selezione>

Il criterio di selezione può essere omesso o può anche essere formato da più condizioni; ad es:

Page 29: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

29

Il comando da impostare è il seguente:

seleziona matricola, cognome, nome, esami_sost, mediada studenti_con_esamidove media > 21e media < 28

e la tabella restituita sarà:

Esempio 3 Visualizzare tutti gli studenti della tabella ‘studenti_con_esami’ con media > 21 e < 28.

Matricola Cognome Nome Esami_sost media

100 bianchi nicola 10 25

500 viola andrea 5 24

Il comando da impostare è il seguente:

seleziona matricola, cognome, nome, esami_sost, mediada studenti_con_esamidove media = 25o media = 28

e la tabella restituita sarà:

Esempio 4 Visualizzare tutti gli studenti della tabella ‘studenti_con_esami’ con media = 25 o media = 28

Matricola Cognome Nome Esami_sost media

100 bianchi nicola 10 25

300 rossi enrica 10 28

Page 30: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

30

L’operazione di proiezione consente di effettuare la scelta di particolari attributi di una relazione. Mentre la selezione elimina, se si applica un criterio di selezione, delle righe dalla tabella indicata, la proiezione elimina delle colonne. Contrariamente al caso della selezione il criterio di eliminazione non dipende da un’espressione da valutare, bisogna specificare direttamente l’insieme degli attributi che vanno selezionatiEsempio: visualizzare gli attributi cognome, nome, media della seguente tabella ‘studenti_con_esami’

Matricola Cognome Nome Esami_sost media

100 bianchi nicola 10 25

200 verdi franca 14 21

300 rossi enrica 10 28

400 neri mario 18 29

500 viola andrea 5 24

Il comando da impostare è il seguente:

seleziona cognome, nome, mediada studenti_con_esami

e la tabella che verrà restituita sarà:

Cognome Nome media

bianchi nicola 25

verdi franca 21

rossi enrica 28

neri mario 29

viola andrea 24

Page 31: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

31

Il join è una operazione fra due o più tabelle e rappresenta un sottoinsieme del prodotto cartesiano fra le due o più tabelle.Il prodotto cartesiano crea una relazione avente per righe tutte le possibili combinazioni ottenibili combinando una riga del primo operando con una riga del secondo.

Prodotto cartesiano fra R e S:

Il prodotto cartesiano raramente è utile, perché generalmente si vogliono ottenere solo le combinazioni di righe per le quali vale una certa proprietà. Esistono diversi tipi di join; vediamo il ‘natural join’: si combinano tra loro solo le righe in cui i valori delle relazioni in due attributi verificano la proprieta’ di uguaglianza nella tabella risultante; supponendo che gli attributi che debbono verificare l’uguaglianza siano ‘cr1’ e ‘cs1’, avremo

Tabella R Tabella S

cr1 cr2 cr3

a a1 a2

b b1 b2

c c1 c2

cs1 cs2

x x1

y y1

a aa1

c cc1

Tabella T =(RxS)

cr1 cr2 cr3 cs1 cs2

a a1 a2 x x1

a a1 a2 y y1

a a1 a2 a aa1

a a1 a2 c cc1

b b1 b2 x x1

b b1 b2 y y1

b b1 b2 a aa1

b b1 b2 c cc1

c c1 c2 x x1

c c1 c2 y y1

c c1 c2 a aa1

c c1 c2 c cc1

Page 32: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

32

cr1 cr2 cr3 cs1 cs2

a a1 a2 x x1

a a1 a2 y y1

a a1 a2 a aa1

a a1 a2 c cc1

b b1 b2 x x1

b b1 b2 y y1

b b1 b2 a aa1

b b1 b2 c cc1

c c1 c2 x x1

c c1 c2 y y1

c c1 c2 a aa1

c c1 c2 c cc1

e quindi la tabella T(RxS) sara:

cr1 cr2 cr3 cs1 cs2

a a1 a2 a aa1

c c1 c2 c cc1

Il comando da impostare è il seguente:

seleziona cr1, cr2, cr3, cs1, cs2da R, Sdove cr1=cs1

Page 33: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

33

Esempio: visualizzare i dipartimenti con i propri corsi di laurea; le tabelle interessate sono:dipartimenti e corsi_laurea

codice_dipart nome indirizzo

sdf Scienze della Formazione …………

let_fil Lettere e Filosofia …………

…………… …………. …………

………… .......................... ..........

corsi_laurea

codice_corso_laurea nome indirizzo codice_dipart

sfp Scienze della Formazione Primaria

………… sdf

fgru Formazione Gestione Risorse Umane

………… sdf

let Lettere ………… let_fil

fil Filosofia ………… let_fil

………… …………. ……….. …. …………..

……………… ……….. ………….. ………………

dipartimenti

Il comando da impostare è il seguente:seleziona dipartimenti.nome, corsi_laurea.nome, corsi_laurea.indirizzoda dipartimenti, corsi_laureadove dipartimenti.codice_dipart=corsi_laurea.codice_dipart¹e la tabella risultato sarà:

dipartimenti.nome corsi_laurea.nome corsi_laurea.indirizzo

Scienze della Formazione Primaria Scienze della Formazione Primaria ……………..

Scienze della Formazione Primaria Formazione Gestione Risorse Umane …………………..

Lettere e Filosofia Lettere ……………………..

Lettere e Filosofia Filosofia …………………..

[1] quando i nomi dei campi sono uguali, nelle due tabelle, occorre qualificarli attraverso il nome della tabella, secondo la notazione [nome tabella].[nome campo]

Il comando Join viene utilizzato quando si ha la necessità di gestire dati che appartengono a tabelle diverse che sono in relazione fra loro. In questo caso occorre inserire nella clausola ‘dove’, l’elenco delle tabelle da prendere in considerazione e nel criterio la condizione (o le condizioni se le tabelle in join sono più di 2) di join.

Page 34: 1 Modulo Gestione Informazione. 2 Termine ‘informatica’ informazione automatica elaboratore automatismo dati due parole tre concetti “L’elaborazione dei

34

SelectCol comando select abbiamo la possibilità di estrarre i dati, in modo mirato, dal database.

Sintassi del comando selectSELECT [ ALL | DISTINCT ] lista_elementi_selezioneFROM lista_riferimenti_tabella[ WHERE espressione_condizionale ][ GROUP BY lista_colonne HAVING Condizione] [ ORDER BY lista_colonne ];

dove lista_elementi_selezione è l'elenco dei campi da estrarre, lista_riferimenti_tabella è l'elenco delle tabella da cui estrarre i dati, espressione_condizionale rappresenta l'elenco delle condizioni, ovvero dei requisiti che un campo deve rispettare per poter essere prelevato dall' interrogazione; lista_colonne è la colonna o le colonne che devono essere prese come riferimento per l'ordinamento dei dati in uscita.

Un esempio è il seguente:

SELECT cognome, nome, citta_residenza FROM utenti WHERE anni >= 18 ORDER BY citta_residenza

Questa query estrae l'elenco di tutti gli utenti maggiorenni ordinando l'output in base alla città di residenza.La definizione di select è comunque molto più ampia, prevede molte altre opzioni ma in linea di massima con queste opzioni si compongono la maggior parte delle interrogazioni.

Da http://it.wikipedia.org/wiki/SQL, riportiamo la sintassi del comando ‘seleziona’ espressa in SQL