Sei sulla pagina 1di 21

Basi di dati

Basi di dati
Vantaggi degli archivi digitali

• Risparmio di spazio: sono facilmente trasferibili e


duplicabili
• Risparmio di tempo: si può accedere ai dati più
rapidamente, per consultarli o modificarli
• Non si è vincolati ad un supporto fisico: questo
permette di gestire diversi tipi di dati
Basi di dati
Dall’utente alle informazioni

Bibliotecario Base di dati


fisica

Utente
DBMS
Base di dati
digitale
Basi di dati
Perché usare un DBMS?
•l'accesso ai dati è indipendente dalla loro
rappresentazione e memorizzazione;
•le tecniche di accesso ai dati sono ottimizzate,
in maniera da migliorare la performance delle
interrogazioni ai database;
•sono possibili controlli di integrità dei dati;
•sono possibili controlli di accesso ai dati;
•è possibile un accesso multiutente.
Basi di dati
Modelli di dati
Una base di dati, per essere di qualche utilità, deve
necessariamente avere una struttura, un modello di
organizzazione.
Tra quelli esistenti, ricordiamo:
• il modello gerarchico;
• il modello a oggetti (object-oriented);
• il modello relazionale;
• il modello relazionale a oggetti (object-relational).
Basi di dati
DBMS relazionali
Nel modello relazionale, un database è un
insieme di relazioni. Ciascuna di esse consiste di
una tabella (righe e colonne).
Le colonne di una tabella sono
anche dette campi, o attributi
della tabella.
Ogni riga costituisce invece
un record.
Basi di dati
Vincoli di integrità
E’ fondamentale che i dati archiviati siano coerenti
rispetto a diversi tipi di criteri.
E’ compito del DBMS verificare la correttezza dei
dati, impedendo, tra l’altro, l’inserimento di dati che
violino i criteri del database.
Un primo criterio è dato dal tipo di dati di un campo.
Basi di dati
Chiavi primarie (primary keys)
Un altro criterio fondamentale è la necessità che in
una tabella non vi siano due righe identiche.
A questo scopo, è necessario che uno (o più d’uno)
dei campi di una tabella possa identificare un certo
record in maniera univoca.
Il campo (o i campi) che rispondono a questi requisiti
sono detti chiavi.
Uno di essi va scelto come chiave primaria.
Basi di dati
Chiavi esterne (foreign keys)
Le informazioni contenute in tabelle diverse dello
stesso database sono spesso correlate.

Le chiavi esterne sono


campi in una tabella
correlata che fanno
riferimento alla tabella
Chiave principale.
primaria
Chiave
esterna
Basi di dati
Structured Query Language
SQL è un linguaggio pensato per la creazione e
gestione di database relazionali.
Permette di creare tabelle, modificarle, cercare
dati, e può essere utilizzato anche da programmi
esterni al DBMS.
Esistono anche diversi “dialetti” SQL, ovvero
versioni leggermente modificate dai maggiori
produttori di DBMS – e tipicamente supportate
solo dai rispettivi prodotti.
Basi di dati
Driver nativi, ODBC, JDBC
Basi di dati
Microsoft Access

Si tratta di un DBMS pensato per un uso personale.


Come conseguenza del target scelto, contiene sia
gli strumenti per progettare, gestire il database, e
interrogarlo, che quelli per costruire delle
interfacce di accesso ai dati, formattarli per la
presentazione, ed altri ancora.
Basi di dati
Microsoft Access: strumenti
Basi di dati
Tabelle

Le tabelle, in un database relazionale,


contengono i dati.
L’interfaccia di gestione delle tabelle fornita da
Access consente di specificare facilmente il tipo di
dati dei singoli campi, eventuali valori predefiniti,
la chiave primaria, criteri di validazione
aggiuntivi, e altro ancora.
Basi di dati
Tipi di query

Per “query” non si intende soltanto una generica


interrogazione a un database, ma un’istruzione SQL
che può avere diversi effetti:
• recuperare informazioni dal database;
• modificare record esistenti;
• aggiungere record a una tabella esistente;
• creare tabelle nuove o modificarne di esistenti.
Basi di dati
Le maschere

Le maschere sono tra le funzionalità più potenti di


Microsoft Access: consentono di costruire
un’interfaccia di accesso ai dati, con grafica,
pulsanti, menu a discesa, e altri oggetti tipici dei
sistemi a finestre, e di personalizzarla in vari
modi.
Una maschera può includere al suo interno altre
maschere, in maniera nidificata.
Basi di dati
I report
I report sono pensati per consentire la creazione di
un documento per la stampa.
Il documento contiene, evidentemente,
informazioni archiviate nel database.
1. Il titolo del report e le intestazioni di colonna sono memorizzati nella
struttura del report
2. La data proviene da un'espressione memorizzata nella struttura del report
3. I dati provengono dai campi della tabella, della query o dell'istruzione SQL
sottostante
4. I totali provengono da espressioni memorizzate nella struttura del report
Basi di dati
Progettazione
Progettare un database è un’attività che richiede
diverse fasi. Innanzitutto bisogna:
• stabilire quali sono i dati da archiviare;
• decidere come andranno recuperati, ovvero le
modalità di accesso più frequenti.
Basi di dati
Conceptual design
Si passa poi a descrivere i dati e le relazioni che
intercorrono tra loro. Per far questo, spesso si usa
un modello di rappresentazione noto come
Entità-Relazione (ER, Entity-relationship).
Numero matricola
Numero matricola
Numero
Nome Cognome E-mail
tel.

Studenti possiede un Recapiti


Basi di dati
Tipi di relazione
I modi in cui le entità possono entrare in
relazione sono tre:
Studenti --- Recapiti
Studenti - Esami
Studenti --- Studenti lavoratori
Rispettivamente:
uno-a-molti, molti-a-molti, uno-a-uno.
Basi di dati
Database di esempio
Esercizio: progettare un database che permetta di
archiviare la propria biblioteca (libri, libri divisi in
più volumi, racconti in antologie, articoli degli atti
di un convegno…)

Potrebbero piacerti anche