t
i
.
o
Modulo 5
o
h
a
y
Database
@
a
l
o
u
c
Syllabus 4.0
s
n
e
d : 1
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
Module Goals t
i
.
o
o
h
a
y
@
la
o
u
c
s
n
e
d : 2
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Cos’è un database ??? t
i
.
o
Database: o
h
a
Insieme di dati riguardanti lo stesso argomento
y
(o argomenti correlati) @
la
Insieme strutturato
o
u
(in modo da essere manipolato)
c
s
Oltre ai dati:
n
e
d
Informazioni sulla rappresentazione dei dati
Relazione fra i dati : 3
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Cos’è un database ??? t
i
.
o
Database: o
h
a
DBMS, software che manipola il DB
y
Struttura basi dati: @
la
* Gerarchica
o
u
* Reticolare
c
s
* Relazionale
n
e (la più diffusa organizzata a tabelle,
d campi,relazione fra tabelle)
* Oggetti : 4
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Tabelle t
i
.
o
Una tabella è un insieme di dati correlati tra di loro
o
h
a
y
Un database può avere più tabelle
@
la
Le tabelle possono essere correlate tra di loro
o
u
c
s
n
e
d : 5
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Tabelle t
i
.
o
o
h
Es: il database scuola può a
contenere la tabella alunni y
@
la
o
u
c
s
n
e
d : 6
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Tabelle t
i
.
o
o
h
Es: il database scuola può a
contenere la tabella classi y
@
la
o
u
c
s
n
e
d : 7
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Tabelle t
i
Una tabella può essere vista come un insieme .
o
strutturato di: o
h
righe (tuple)(record) e colonne (attributi) a
y
@
la
A T T R I B U T I
o
u
c
s
n
T e
U d
P
L
E : 8
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Record/Tupla t
i
.
o
Una record (tupla) è un insieme di attributi relativi alla
o
h
stessa entità a
y
@
Una tupla è una riga di una tabella del database
la
o
u
Una tabella può avere più tuple
c
s
n
e
d : 9
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Record t
i
.
o
o
h
a
y
@
la
Tupla/Record costituita dagli
o
u
attributi in relazione fra loro:
c
s
n
id alunno (3)
e
cognome (Giorgetti)
d
nome(pietro) : 10
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Record t
i
.
o
o
h
a
y
@
la
Tupla/Record costituita dagli
o
u
attributi in relazione fra loro:
c
s
n
id classe (3)
e
descrizione classe (III B)
d
indirizzo (informatica)
ubicazione (primo piano) : 11
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Campo/Attributo t
i
.
o
Una campo (attributo) è una tipologia di dato/informazione
o
h
a
y
Una attributo è una colonna di una tabella del database
@
la
Una tabella può avere più attributi
o
u
c
s
n
e
d : 12
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Campo t
i
.
o
o
h
a
y
@
la
o
Il campo nome,conterrà i dati
u
c
s
relativi al nome in tutte le tuple
n
e
d : 13
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Campo t
i
.
o
o
h
a
y
@
la
o
Il campo indirizzo conterrà i dati
u
c
s
relativi all’indirizzo in tutte le tuple
n
e
d : 14
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Tipi di dati e proprietà t
i
.
o
In base alle informazioni che devono contenere e/o ai
o
h
comportamenti cui saranno soggetti i campi/attributi
a
y
saranno definiti attraverso tipi di dato e possiederanno
@
determinate proprietà la
o
u
c
s
n
e
d : 15
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Tipi di dati e proprietà t
i
.
o
In Access il tipo di dato viene selezionato tramite menu a
o
h
tendina nella visualizzazione struttura a
y
@
la
o
u
c
s
n
e
d : 16
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Tipi di dati e proprietà t
i
.
o
o
h
a
y
@
Principali tipi di dato
la
o
u
c
s
n
e
d : 17
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Tipi di dati e proprietà t
i
Impostazione Tipo di dati .
o
o
Testo Impostazione predefinita. Testo o combinazioni di
h
a
testo e numeri, compresi numeri che non richiedo
y
no calcoli, come numeri di telefono.
@
la
o
Memo Testo lungo o combinazioni di testo e numeri.
u
c
s
n
Numerico Dati numerici utilizzati in calcoli matematici. Per u
e
d lteriori informazioni relative all'impostazione di d
eterminati tipi numerici, vedere l'argomento relati
vo alla proprietà : 18
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Tipi di dati e proprietà t
i
Impostazione Tipo di dati .
o
o
Data/Ora Valori data e ora per gli anni da 100 a 9999
h
a
y
Valuta Valori per valuta e dati numerici utilizzati in calco
@
li matematici che impiegano dati contenenti da un
la
a a quattro posizioni decimali. Tali numeri hanno
o
fino a quattro cifre a destra e 15 a sinistra del sepa
u
c
ratore decimale
s
n
Contatore Numero sequenziale univoco, cioè incrementato d
e
d i un'unità o numero casuale ogni volta che viene a
ggiunto un nuovo record a una tabella. Non è pos
sibile aggiornare i campi Contatore : 19
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Tipi di dati e proprietà t
i
Impostazione Tipo di dati .
o
o
Sì/No I valori e i campi Sì e No contenenti uno di due valo
h
a
ri (Sì/No, True/False, On/Off)
y
Oggetto OLE Un oggetto, come un foglio di calcolo di Microsoft E
@
xcel, un documento di Microsoft Word, grafici, suo
la
o
ni o altri dati binari.
u
c
Collegamento Testo o combinazioni di testo e numeri memorizzat
s
e come testo e utilizzate come indirizzo di collegam
n
ipertestuale e ento ipertestuale.
d
Ricerca guidata Crea un campo che consente di scegliere un valore
da un'altra tabella o da un elenco di valori utilizzan
do una casella di riepilogo o una casella combinata.
: 20
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Tipi di dati e proprietà t
i
.
Proprietà collegate ai tipi di dato o
o
h
a
y
@
la
o
u
c
s
n
e
d : 21
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Tipi di dati e proprietà t
i
.
Proprietà collegate ai tipi di dato o
o
h
a
y
@
la
o
u
c
s
n
e
d : 22
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Chiave primaria t
i
.
Uno o più campi il cui valore o i cui
o
o
h
a
valori identificano in modo univoco i
y
@
singoli record di una tabella
a
l
o
u
c
s
n
e
d : 23
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Chiave primaria t
i
.
Uno o più campi/attributi il cui valore o i cui
o
o
h
a
valori identificano in modo univoco i singoli
y
@
record/tuple di una tabella
a
l
o
u
c
s
n
e
d : 24
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Chiave primaria t
i
.
o
o
h
a
Record 1 y
Record 2 @
la
o
u
c
Come faccio a distiunguere Record 1
s
n
dal Record 2 ??
e
d
Devo associare ad un record un identificativo (uno o più
attributi) che lo rende univoco : 25
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Chiave primaria t
i
.
o
o
h
a
y
@
la
o
u
c
Posso introdurre un idalunno e fare in modo che questo
s
n
valore non supporti duplicati in modo che il record sia
e
individuato univocamente
d : 26
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Chiave primaria t
i
.
o
o
h
In access (ma anche in altri DBMS) spesso
a
y
viene generata una chiave primaria
@
a
come contatore automatico gestito dal
l
o
u
sistema c
s
n
e
d : 27
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Chiave primaria t
i
.
Impostazione 1: o
o
dal campo che vogliamo usare come h
a
chiave tasto destro del mouse y
@
la
o
u
c
s Impostazione 2:
n
e dal campo che vogliamo usare
d come chiave menu modifica : 28
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Indice t
i
.
o
Funzione che accelera la ricerca e l'ordinamento
o
h
a
in una tabella sulla base di uno o più campi
y
indicizzati. @
a
l
o
Un indice può essere univoco e non ammettere
u
c
s
duplicazioni di valore
n
e
d : 29
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Indice t
i
.
o
o
Es. se il campo cognome richiederà molti
h
a
accessi o elaborazioni posso indicizzarlo
y
@
in modo da rendere più rapide ricerche
la
o
ed ordinamenti nel campo (rallentando
u
c
la fase di aggiornamento)
s
n
e
d : 30
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Indice t
i
.
o
o
h
a
y
@
la
o
u
c
s
n Impostazione1:
e
d dalle proprietà del campo seleziono
l’eventuale indicizzazione specificando
anche se sono ammessi duplicati : 31
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Relazioni tra tabelle t
i
.
Perché organizzare e relazionare i dati in tabelle ???
o
o
h
a
y
Gestione di una grossa mole di dati
@
la
Evitare duplicazioni
o
u
c
s
Controllare aggiunte e cancellazioni
n
e
d Ottimizzare l’accesso alle informazioni : 32
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Relazioni tra tabelle t
i
.
o
o
h
a
y
@
la
o
Immaginiamo una tabella unica di questo tipo
u
c
s
n
Inefficienze nel database ???
e
d : 33
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Relazioni tra tabelle t
i
.
o
o
h
a
y
@
la
o
Inefficienza 1 nel database:
u
c
s
n
ho un gran numero di dati ripetuti che aumentano
e
notevolmente la dimensione del database
d : 34
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Relazioni tra tabelle t
i
.
o
o
h
a
y
@
la
o
Inefficienza 2 nel database:
u
c
s
n
se la classe III A subisce uno spostamento di piano devo ri
e
organizzare tutti i record correlati
d : 35
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Relazioni tra tabelle t
i
.
o
o
h
a
y
@
la
o
Inefficienza 3 nel database:
u
c
s
n
se rossi cambia classe devo aggiornare tutti e tre i campi
e
collegati alla classe
d : 36
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Relazioni / regole tra tabelle
t
i
.
Questa inefficienza può essere risolta: o
o
h
a
y
Stabilendo relazioni fra le tabelle
@
la
Stabilendo regole che le supportino
o
u
c
s
n
e
d : 37
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Relazioni / regole tra tabelle
t
i
Posso raggruppare i dati delle classe in una tabella
.
o
classi: o
h
a
y
@
la
o
u
c
Posso raggruppare i dati degli alunni in una tabella
s
n
alunni: e
d : 38
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Relazioni / regole tra tabelle
t
i
.
Nella tabella alunni ci sarà solo un codice riferito alla classe.
o
I dati della classe saranno gestiti nella tabella classe.
o
h
a
y
@
la
o
u
c
s
n
e
d : 39
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Relazioni / regole tra tabelle
t
i
Inefficienza 1 nel database: Inefficienza 1 RISOLTA .
o
ho un gran numero di dati ripetuti nella tabella alunni memorizzo solo
o
h
che aumentano notevolmente la un codice numerico che fa riferimento
a
y
dimensione del database alla tabella classi
@
Inefficienza 2 nel database: Inefficienza 2 RISOLTA
la
o
se la classe III A subisce uno devo modificare solo il campo
u
spostamento di piano devo ubicazione nella tabella classi
c
s
riorganizzare i record correlati
n
e
Inefficienza 3 nel database:
d Inefficienza 3 RISOLTA
se rossi cambia classe devo devo modificare per rossisolo il
aggiornare tutti e tre i campi campo codice nella tabella classi
collegati alla classe : 40
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Relazioni / regole tra tabelle
t
i
Vengono definite: .
o
o
relazioni h
a
il codice classe in alunno y
è in relazione @
la
con l’idclasse in classi
o
u
c
s
n
e
d : 41
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Relazioni / regole tra tabelle
t
i
Vengono definite: .
o
o
regole h
a
per ogni classe (1)
y
ci possono essere
@
la
più alunni ∞)
( o
u
c
s
n
e
d : 42
Diapo
Prof. Ruggeri Denis [ denscuola@yahoo.it ]
5.1 Usare l’applicazione
5.1.1 Concetti Fondamentali Relazioni / regole tra tabelle
t
i
Vengono definite: .
o
o
regole h
a
y
una classe può anche non avere alunni collegati
@
a
l
o
u
un alunno deve per forza avere una classe collegat
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.