Title: prof. ing. Paolo Bidello
1Laboratorio Informatico
- Promemoria degli argomenti
- Access
2Argomenti della lezione
- Access. Concetti generali
- Progetto di una tabella
- Record, campi e tipi di dati più usati
- Campo chiave e campo indicizzato
- Relazioni 1 a 1
- Relazioni 1 a molti
- Le Query. Concetti generali
- Esempi di alcune query in SQL
3Concetti generali
- Un database è un insieme di informazioni
organizzate in tabelle - Si possono avere
- Database piatti
- Database relazionali
- Nei database piatti le informazioni sono
contenute in ununica tabella - Nei database relazionali le informazioni sono
strutturate in più tabelle legate tra loro
attraverso relazioni
4Concetti generali
- In generale può dirsi che un database piatto è
costituito da informazioni organizzate in tabelle
e da operazioni sulle informazioni - In un database relazionale sono presenti, oltre
che informazioni ed operazioni, anche relazioni
tra le informazioni
5Concetti generali
- I dati nelle tabelle sono organizzati in righe e
colonne - Le righe individuano i RECORD che, ad esempio,
corrispondono agli individui di una certa
indagine - Le colonne rappresentano i CAMPI che, invece,
corrispondono ai caratteri di ciascun individuo
di una certa indagine
6Campi
- Il nome di un campo deve essere unico (in una
stessa tabella due campi non possono avere lo
stesso nome) - Ogni campo deve avere una lunghezza in byte
predeterminata nel momento del progetto di una
tabella - La lunghezza del campo dipende dal tipo di dato
che viene scelto - Dal tipo di dato dipende, inoltre, il campo di
variazione del campo
7Tipi più usati, byte e range
Data Type Size of Data Range Integer 2
bytes -32,768 to 32,767 long Integer 4
bytes -2,147,486,648 to 2,147,483,647 Single 4
bytes -3.402823E38 to -1.401298E-45 for negative
values Single 4 bytes 1.401298E-45 to
3.402823E38 for positive values Double 8
bytes -1.797693134862315D308 to -4.94066D-324
(n.v.) Double 8bytes 4.94066D-324 to
1.797693134862315D308 (p.v.) String 1 byte
per 0 to approximately 65.535 bytes
8Campi indicizzati
- Un campo indicizzato consente una ricerca più
rapida dei record che fanno parte di una stessa
tabella - Lesempio classico di un campo indicizzato è
quello dei cognomi in una tabella che contiene i
nominativi ed i numeri di telefono degli abitanti
di uno stesso distretto telefonico
9Campi chiave
- In un data base relazionale un campo che ammette
valori univoci (tali cioè da caratterizzare e
rendere unico ogni record di una stessa tabella)
è detto campo chiave - Il classico esempio è il campo MATRICOLA in una
tabella che rappresenta lanagrafica degli
studenti - Il campo chiave di una tabella viene usato per
stabilire le successive relazioni tra le tabelle
di un database relazionale
10Relazioni 1 a 1
- Due tabelle, ciascuna con un campo chiave,
possono essere messe in relazione 1 a 1 quando
ad ogni record di una tabella corrisponde 1 ed un
solo record dellaltra tabella - Nelle esercitazioni è stato proposto lesempio in
figura
11Relazioni uno a molti
- Due tabelle possono essere messe in relazione 1
a molti quando ad ogni record di una tabella
possono corrispondere più record dellaltra
tabella - Nelle esercitazioni è stato proposto lesempio in
figura
12Operazioni sui dati le Query
- Le Query sono usate per
- Filtrare (estrarre) dati
- Aggiungere dati
- Cancellare dati
- Modificare dati
- Esse rappresentano dunque tutte le possibili
OPERAZIONI che è possibile fare con una base di
dati esistente
13Query
- Le Query vengono operate su
- Tabelle singole
- Più tabelle con relazioni
- Altre Query già esistenti
- Nelle esercitazioni si è mostrato anche che
esistono anche comandi SQL (Structured Query
Language) con i quali è possibile compiere le
stesse operazioni che in Access vengono
normalmente svolte tramite interfaccia grafica
14Il comando SQL SELECT
- Nelle esercitazioni si è mostrato il significato
del seguente comando SQL - SELECT tbEsami.Matr
- FROM tbEsami
- WHERE tbEsami.Votogt25
- Tale Query permette di visualizzare tutti i campi
Matr dalla tabella tbEsami i cui record abbiano
il campo Voto maggiore o al massimo uguale di 25
15Significato della Query
- Il comando SELECT permette di estrarre tutti o
solo alcuni record - La clausola FROM indica la tabella origine o
sorgente dei dati - La clausola WHERE indica il filtro cioè il
criterio di estrazione dei record dalla tabella
origine o sortente dei dati