Basi di dati
Il modello relazionale
• Si tratta della fase di progettazione.
• In questa fase individuiamo esattamente quello che è utili
informatizzare
• Cerchiamo gli elementi importanti
• Individuiamo le loro proprietà
• Le relazioni tra loro
Scuola le entità di interesse
• Entità di interesse:
•
•
•
•
•
•
Studenti
Personale docente
Personale non docente
Le materie
Le verifiche
Pagellini
Scuola gli attributi delle entità
• Caratteristiche delle entità (dette anche attributi)
• Studente
•
•
•
•
•
•
Nome e cognome
Indirizzo di abitazione
Telefono casa ed email
Matricola
Corso a cui è iscritto
Classe in cui è iscritto
Scuola gli attributi delle entità
• Verifiche
• Data svolgimento
• Voto
• Materia
• Nota che non considero come attributi «nome del docente», «nome
dello studente» perché sono informazioni presenti in altre entità cioè
in «docente» e «studente»
Relazioni
• Tra le entità esistono relazioni
• Lo studente effettua una verifica è la relazione tra le entità
«studente» e «verifica».
• Il «docente» propone la «verifica» è la relazione tra altre due entità.
• Le relazioni collegano due entità per cui quando parlo di una verifica
posso sapere quale docente l’ha eseguita se metto in relazione le due
entità «docente» e «verifica».
verifica
sostiene
studente
Modelli
• Modello concettuale
Si ottiene individuando entità, attributi, relazioni.
Modello concettuale   {entità, attributi, associazioni}
• Modello logico
Si ottiene individuando le strutture dati da utilizzare, cioè come
organizzare i dati.
• Modello relazionale.
È il modello logico più usato in cui i dati sono organizzati in tabelle
Modello relazionale
• Ogni tabella rappresenta una entità
• Gli attributi diventano colonne della tabella
• Le righe sono le particolari entità (uno specifico studente) e sono dette
record
• I campi del record sono il valore degli attributi.
Matricola
Nome
Cognome
Data
nascita
Classe
Indirizzo
abitazione
Telefono
00071
Giovanni
Di Biase
01/01/2001 1C
Via Roma 21
Termoli
0875.10000
00072
Pasquale
Larivera
01/03/2001 1A
Via Pescara 7
Termoli
0875.12345
Relazioni entità e tabelle
• Le informazioni si organizzano in tabelle separate
• Popolare una tabella significa riempirla di dati
• Nell’ esempio di figura abbiamo 2 tabelle (studenti e verifiche)
• Poiché gli studenti sostengono le prove le tabelle devono essere
collegate tra loro
• Due tabelle sono in relazione se hanno un attributo in comune, per
esempio la tabella delle verifiche deve avere il campo «matricola» che
è tipico dello studente.
matricola
verifica
sostiene
studente
matricola
I campi chiave
• All'interno di una tabella è utile individuare un campo (un attributo
dell’entità analizzata) che sia univoco, cioè per il quale ad ogni valore
distinto esiste un’unica entità
• Per esempio il campo matricola è univoco per uno studente
• Questo campo è detto «campo chiave» della tabella
• Altri esempi di chiave:
• Il codice fiscale per una persona
• La targa di un veicolo
• Il codice prodotto in un negozio
Indicizzare una chiave
• Significa ordinare in modo crescente le chiavi in modo da velocizzare
le ricerche dei record.
• Se ho un indice in un libro, ordinare le parole da cercare
alfabeticamente mi aiuta nel trovare la pagina corretta.
• È possibile indicizzare anche i campi che non sono chiavi
Collegare le tabelle
• Per esprimere la relazione tra studenti e verifiche (e comunque tra due
entità) devo collegare le tabelle corrispondenti.
• Per collegare le tabelle tra loro basta aggiungere alla seconda tabella un
campo per la chiave univoca della prima.
• Questa colonna aggiunta si chiama «chiave esterna».
• Collegando le due tabelle io posso ottenere informazioni da entrambe
perché una ricerca sulla prima mi tira fuori tutti i collegamenti con la
seconda
• Se cerco uno studente tramite matricola, posso cercare tutti i record di tale
matricola nella tabella verifiche, ottenendo tutte le verifiche effettuate.
• La chiave della tabella studenti è anche un campo della tabella
verifiche (chiave esterna)
Matricola
Nome
Cognome
Data
Materia
Mat_stud
00071
Giovanni
Di Biase
01/02/2014 Italiano
00071
00072
Pasquale
Larivera
05/05/2014 Francese
00071
08/05/2014 Italiano
00072
Database relazionale
• È la base di dati che utilizza il modello relazionale cioè il modello
basato sulle tabelle.
Modelli logici
Database
relazionali
Modelli
relazionali
(con le tabelle)
DBMS Data Base Management System
• È un particolare software che consente di costruire e gestire un Data
Base (DB).
• Meglio è un sistema che fa da interfaccia tra gli utenti e il database,
introducendo una serie di funzionalità che rendono molto potente la
gestione dell’archivio dati.
DBMS
Data base
Funzionalità del DBMS
• Implementazione
• Definizione delle tabelle e memorizzazione delle stesse sulle memorie di massa.
• Manipolazione
• Inserimento dati, modifica, cancellazione.
• Interrogazioni
• Accesso alle informazioni attraverso richieste ed interfacce che accettano tali
richieste
• Controllo di integrità
• Garanzia che non vi siano invformazioni duplicate o incoerenti
• Sicurezza dati
• Protezione dei dati contro i danni dovuti ad incidenti o accessi indesiderati,
Microsoft Access = DBMS
• Tabelle: i dati sono organizzati in tabelle
• Query: sono interrogazioni sui dati che consentono di estrarre
informazioni più svariate
• Maschere: si creano per consentire l’inserimento dei dati agli utenti e
sono interfacce in finestre con i campi che interessano
• Report: servono a presentare le informazioni in una forma voluta, per
poi stamparle.
Maschere, query, report, tabelle, relazioni
Scarica

Basi di dati