il data base è una raccolta di archivi (su disco) su cui lavorano più utenti.
Il software per l'accesso al data base rientra nella categoria DBMS: Data Base Management System. Esempi Access, Oracle.
Tra DBMS e data base esiste un'indipendenza, nel senso che le modifiche all'organizzazione e alla struttura dei dati possono essere fatte senza modificare il software di gestione.
il primo passo per costruire un data base consiste nell'acquisire le specifiche sui dati da trattare e sulle operazioni di base che si desidera svolgere. L'analisi delle specifiche si conclude con una rappresentazione descrittiva dei dati e delle relazioni tra essi.
Le specifiche sono le richieste dell'utente raccolte dal progettista dopo un'opportuna intervista.
Un diagramma E/R è una rappresentazione di:
Entità |
è un elemento che ha un significato in conseguenza dei valori attribuiti alle sue proprietà |
Esempi di Entità sono:
il libro che è un elemento per rappresentare il patrimonio di una biblioteca,
una Persona che è un elemento per rappresentare gli utenti di una biblioteca.
Il compito del progettista consiste, in particolare, nel riuscire a generalizzare le entità coinvolte nell'elaborazione.
Ad esempio, in una biblioteca non sono presenti solo libri, ma anche riviste e materiali di consultazione su supporti magnetici e ottici.
Quindi l'entità potrebbe essere definita Pubblicazione, e il libro sarebbe una particolare pubblicazione.
Proprietà (o attributi o Campi) di un'Entità |
sono le variabili che descrivono l'entità e sono utili per distinguere un entità da un'altra. |
Un attributo (così come le variabili in un linguaggio di programmazione) possiede:
un nome di identificazione,
un tipo, (intero, boolean, testo, ecc.)
una dimensione, che per alcuni tipi è prestabilita mentre deve essere specificata per il tipo testo,
un'opzionalità del valore, cioè la possibilità di un attributo di avere il valore Null o l'obbligatorietà di assegnargli un valore.
Quando si assegnano i valori alle proprietà si individua un'istanza dell'Entità
Ad esempio le proprietà di un libro sono:
Un'istanza (o record) dell'entità libro è:
Chiave Primaria |
è un insieme di attributi i cui valori sono unici per ogni record, quindi permettono di individuare uno specifico record all'interno del data base. |
Esempi di chiave Primaria.
Per individuare univocamente una persona potrebbe essere sufficiente usare come campi chiave primaria il nome e il cognome, ma per distinguere gli omonimi bisogna prendere in considerazione anche la data di nascita. Non si può escludere comunque che anche in questo caso ci siano due omonimi con la stessa data di nascita, infatti il codice fiscale di una persona, viene calcolato in modo che non ci siano due cittadini italiani con lo stesso codice fiscale.
Il codice a barre di un prodotto è un altro esempio di chiave primaria. Infatti sarebbe estremamente scomodo usare molte caratteristiche di un prodotto per identificarlo univocamente.
Per rappresentare un'entità si usa una tabella la cui intestazione è il nome dato all'entità e le righe sottostanti rappresentano l'elenco delle proprietà. Le proprietà che sono chiave primaria vengono sottolineate.
Libro |
IDLibro Autore titolo Editore Prezzo ecc... |
Esempio di rappresentazione di un'Entità
(La chiave primaria è sottolineata)
Associazione (o Relazione) tra le Entità |
è un legame che descrive il criterio di corrispondenza tra i record di due entità |
Esempi di relazioni:
La relazione tra l'Entità Studente e l'Entità Classe si può esprimere con la frase:
uno Studente frequenta una classe
e si rappresenta con il diagramma (tralasciando le rispettive proprietà):
Studente | ———— | Classe |
La relazione tra l'entità Professore e l'entità Materia si può esprimere con la frase:
un Professore insegna una Materia
e si rappresenta con il diagramma:
Professore | ———— | Materia |
Dai due esempi proposti si osserva che si può adottare una semplice regola:
I nomi dati alle Entità sono sostantivi, mentre i nomi dati alle relazioni sono verbi.La freccia della relazione indica il verso di lettura, infatti leggendo la relazione in senso inverso il verbo assume la forma passiva:
una classe è frequentata da uno studente.
Si consideri la necessità di mantenere il curriculum dello studente. Bisogna, cioè distinguere le classi frequentate dallo studente. L'informazione che serve è l'anno scolastico. Questa informazione non è un attributo nè dello studente nè della classe, è un attributo della relazione.
Studente | ——— | ——— | Classe | |