Basi di Dati
Microsoft Office: Access
OpenOffice: Base
Scopo dei programmi Office
• Word: scrivere un documento e stamparlo
• Excel: stilare un rendiconto e
(eventualmente) tradurre i risultati in
grafici
• PowerPoint: fare una presentazione (di
solito, di fronte ad un uditorio)
• Access: gestire una base di dati
Informatica 1 SCICOM (COM) - a.a. 2010/11
2
Base di dati
Insieme organizzato di dati
utilizzati per il supporto allo
svolgimento delle attività di un
ente (azienda, ufficio, persona)
Informatica 1 SCICOM (COM) - a.a. 2010/11
3
Sistema di gestione di basi di dati
DataBase Management System — DBMS

Sistema (prodotto software) in grado di gestire
collezioni di dati che siano (anche):


grandi (di dimensioni (molto) maggiori della memoria centrale
dei sistemi di calcolo utilizzati)
persistenti (con un periodo di vita indipendente dalle singole
esecuzioni dei programmi che le utilizzano)
Condivise (utilizzate da applicazioni e utenti diversi)
garantendo affidabilità (resistenza a malfunzionamenti hardware
software) e privatezza (con una disciplina e un controllo degli
accessi). Come ogni prodotto informatico, un DBMS deve essere
efficiente (utilizzando al meglio le risorse di spazio e tempo del
sistema) ed efficace (rendendo produttive le attività dei suoi
utilizzatori).


Informatica 1 SCICOM (COM) - a.a. 2010/11
4
Alcuni DBMS in commercio
Access
DB2
Oracle
Informix
Sybase
SQLServer
Ingres
Postgres
MySQL
Informatica 1 SCICOM (COM) - a.a. 2010/11
5
Condivisione
Ogni organizzazione (specie se grande) è
divisa in settori o comunque svolge diverse
attività
A ciascun settore o attività corrisponde un
(sotto)sistema informativo
Possono esistere sovrapposizioni fra i dati
di interesse dei vari settori
Una base di dati è una risorsa integrata,
condivisa fra i vari settori

Informatica 1 SCICOM (COM) - a.a. 2010/11
6
Informatica 1 SCICOM (COM) - a.a. 2010/11
7
Informatica 1 SCICOM (COM) - a.a. 2010/11
8
Possibili problemi
Ridondanza:
informazioni ripetute
Rischio di incoerenza:
le versioni possono non coincidere
Informatica 1 SCICOM (COM) - a.a. 2010/11
9
Archivi e basi di dati
Gestione
orario lezioni
Archivio 1:
orario lezioni
Gestione
ricevimento
Archivio 2:
ricevimento
Informatica 1 SCICOM (COM) - a.a. 2010/11
10
Archivi e basi di dati
Gestione
orario lezioni
Base di dati
Gestione
ricevimento
Informatica 1 SCICOM (COM) - a.a. 2010/11
11
Obiettivo
• Gestire dati strutturati
– Inserire, modificare, cancellare dati
• Fare ricerche sui dati secondo svariati
criteri
• Presentare i dati in modi diversi
Informatica 1 SCICOM (COM) - a.a. 2010/11
12
Relazioni nel modello relazionale
dei dati
A ciascun dominio associamo un nome (attributo),
unico nella relazione, che “descrive” il ruolo del
dominio
L’ordinamento fra gli attributi è irrilevante:
la struttura è non posizionale
Informatica 1 SCICOM (COM) - a.a. 2010/11
13
Tabelle e relazioni

Una tabella rappresenta una relazione se

i valori di ogni colonna sono fra loro omogenei

le righe sono diverse fra loro

le intestazioni delle colonne sono diverse tra loro
In una tabella che rappresenta una relazione

l’ordinamento tra le righe è irrilevante

l’ordinamento tra le colonne è irrilevante
Informatica 1 SCICOM (COM) - a.a. 2010/11
14
Il modello è basato su valori
i riferimenti fra dati in relazioni
diverse sono rappresentati per mezzo
di valori dei domini che compaiono nelle
ennuple
Informatica 1 SCICOM (COM) - a.a. 2010/11
15
studenti
Matricola
Cognome
Nome
Data di nascita
6554
Rossi
Mario
05/12/1978
8765
Neri
Paolo
03/11/1976
9283
Verdi
Luisa
12/11/1979
3456
Rossi
Maria
01/02/1978
esami
Studente
3456
3456
9283
6554
Voto
30
24
28
26
Corso
04
02
01
01
corsi
Codice
Titolo
Docente
01
Analisi
Mario
02
Chimica
Bruni
04
Chimica
Verdi
Informatica 1 SCICOM (COM) - a.a. 2010/11
16
studenti
Matricola
Cognome
Nome
Data di nascita
6554
Rossi
Mario
05/12/1978
8765
Neri
Paolo
03/11/1976
9283
Verdi
Luisa
12/11/1979
3456
Rossi
Maria
01/02/1978
esami
Studente
Voto
30
24
28
26
Corso
corsi
Codice
Titolo
Docente
01
Analisi
Mario
02
Chimica
Bruni
04
Chimica
Verdi
Informatica 1 SCICOM (COM) - a.a. 2010/11
17
Vantaggi della struttura basata su
valori
indipendenza
dalle strutture fisiche (si
potrebbe avere anche con puntatori di alto
livello) che possono cambiare dinamicamente
si rappresenta solo ciò che è rilevante dal
punto di vista dell’applicazione
l’utente finale vede gli stessi dati dei
programmatori
i dati sono portabili piu' facilmente da un
sistema ad un altro
i puntatori sono direzionali
Informatica 1 SCICOM (COM) - a.a. 2010/11
18
Chiavi


Matricola
Cognome
Nome
Corso
Nascita
27655
78763
Rossi
Rossi
Mario
Mario
Ing Inf
Ing Inf
5/12/78
3/11/76
65432
87654
Neri
Neri
Piero
Mario
67653
Rossi
Piero
Ing Mecc
Ing Inf
Ing Mecc
10/7/79
3/11/76
5/12/78
non ci sono due ennuple con lo stesso valore
sull’attributo Matricola
non ci sono due ennuple uguali su tutti e tre gli
attributi Cognome, Nome e Data di Nascita
Informatica 1 SCICOM (COM) - a.a. 2010/11
19
Chiave

insieme di attributi che identificano
univocamente le ennuple di una relazione
–
Superchiave
–
Minimale
Informatica 1 SCICOM (COM) - a.a. 2010/11
20
Esempio
Matricola
Cognome
Nome
Corso
Nascita
27655
Rossi
Mario
Ing Inf
78763
Rossi
Mario
Ing Inf
5/12/78
3/11/76
65432
Neri
Piero
Ing Mecc
10/7/79
87654
Neri
Mario
Ing Inf
3/11/76
67653
Rossi
Piero
Ing Mecc
5/12/78
Matricola è una chiave:

è superchiave

contiene un solo attributo e quindi è minimale
Informatica 1 SCICOM (COM) - a.a. 2010/11
21
Esempio
Matricola
Cognome
Nome
Corso
Nascita
27655
Mario
Mario
Ing Inf
78763
Rossi
Rossi
Rossi
Rossi
Rossi
Mario
Mario
Ing Inf
5/12/78
5/12/78
3/11/76
3/11/76
65432
Neri
Piero
Ing Mecc
10/7/79
87654
Neri
Mario
Mario
Ing Inf
3/11/76
3/11/76
67653
Rossi
Rossi
Piero
Ing Mecc
5/12/78
5/12/78

Cognome, Nome, Nascita è un’altra chiave:
è superchiave
 minimale

Informatica 1 SCICOM (COM) - a.a. 2010/11
22
Importanza delle chiavi
l’esistenza
delle chiavi garantisce
l’accessibilità a ciascun dato della base di
dati
le
chiavi permettono di correlare i dati in
relazioni diverse:

il modello relazionale è basato su valori
Informatica 1 SCICOM (COM) - a.a. 2010/11
23
Oggetti di una base di dati
Access
• Tabelle
• Query (“domanda”, “interrogazione”)
– per estrarre alcuni dati selezionati
Informatica 1 SCICOM (COM) - a.a. 2010/11
24
Oggetti di una base di dati access (2)
• Maschere
– per inserimento dati in un formato “a
scheda”
• Report (“riassunto”)
– per elencare i dati secondo un formato che
li raccoglie per categorie
Informatica 1 SCICOM (COM) - a.a. 2010/11
25
Tabelle
• Griglia righe-colonne
• Attributi (o campi) sulle colonne
• Ogni riga è un record, indivisibile
• Ogni record rappresenta un dato strutturato
Informatica 1 SCICOM (COM) - a.a. 2010/11
26
Visualizzazioni di una tabella
• Foglio dati (è la tabella stessa)
• Struttura: per ogni campo, si visualizza
(e si cambia eventualmente)
– il tipo di dato (numero, testo, data, si/no,…)
– le sue caratteristiche
Informatica 1 SCICOM (COM) - a.a. 2010/11
27
Modifica e inserimento
• Dal foglio dati, è possibile inserire nuovi
record (nell’ultima riga vuota del foglio)
• È possibile copiare, tagliare, incollare
singoli valori, o interi record
• Access controlla sempre che i dati
inseriti o modificati rispettino i vincoli
stabiliti nella struttura
– es. duplicati, tipo dei dati
Informatica 1 SCICOM (COM) - a.a. 2010/11
28
Caratteristiche di un tipo di
dato
• Es. per il testo:
– numero di caratteri
• fino a 255
– richiesto (si/no)
• se sì, ogni record deve avere il campo riempito
– duplicati ammessi,
– indicizzato
Informatica 1 SCICOM (COM) - a.a. 2010/11
29
Uso delle caratteristiche
• Access controlla che ogni dato inserito
rispetti le caratteristiche specificate
– ad es., se un campo "codice fiscale" ha
lunghezza 16 caratteri, Access rifiuta
inserimenti di C.F. di 17 o più caratteri
Informatica 1 SCICOM (COM) - a.a. 2010/11
30
Perché dei controlli sui dati
• I dati sono un patrimonio (asset)
dell'istituzione che li detiene
• spesso hanno un valore di mercato
• Dati inaffidabili producono:
• perdita di valore
• inefficacia del loro uso (ad es., invio di lettere)
Informatica 1 SCICOM (COM) - a.a. 2010/11
31
Limiti dei controlli
• I controlli sui dati che può fare Access
sono puramente formali, non sostanziali
(sintattici e non semantici)
– si può scartare un C.F. come "Blabla"
– non si riesce a scartare un C.F. come
ABCDEF12G34H567Z (formalmente giusto)
Informatica 1 SCICOM (COM) - a.a. 2010/11
32
Indicizzazione
Se un campo è indicizzato, la ricerca di un
dato secondo quel campo è molto veloce
• Es. l’ordine alfabetico dei cognomi nell’elenco
telefonico
• si apre l'elenco a metà, e si continua la ricerca
nella sola metà in cui sta il
cognome
Informatica 1 SCICOM (COM) - a.a. 2010/11
33
indicizzazione (2)
• Se un campo non è indicizzato, per
cercare un dato bisogna (nel caso
peggiore) scorrere tutti i record
– Es. cercare sull’elenco il nome di una
persona avendo il suo numero di telefono...
– non si può saltare neanche una pagina
• il nome-numero potrebbe essere proprio lì
Informatica 1 SCICOM (COM) - a.a. 2010/11
34
Chiave primaria
• campo speciale di ogni tabella
• duplicati non ammessi, valore mai vuoto
• identifica univocamente un record
• es., il codice fiscale di una persona
• di solito, campo "ID" di tipo contatore
Informatica 1 SCICOM (COM) - a.a. 2010/11
35
Scarica

Basi di Dati-1