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 00071 Giovanni Di Biase 01/01/2001 1C Via Roma 21 Termoli 00072 Pasquale Larivera 01/03/2001 1A Via Pescara 7 Termoli Telefono 0875.10000 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 00071 Giovanni Di Biase 00072 Pasquale Larivera Data Materia Mat_stud 01/02/2014 Italiano 00071 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. Database relazionali Modelli relazionali (con le tabelle) Modelli logici
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