I DATA BASE:Generalità e schema E/R (appunti NON esaustivi )
Introduzione
Con il termine base di dati si indica:
un insieme di archivi di dati organizzati con l’obiettivo di raggiungere
una grande efficienza nel trattamento e nel ritrovamento dei dati
ovvero la possibilità di gestire (inserire-modificare-eliminare) e ritrovare facilmente le informazioni
desiderate, attraverso criteri di ricerca diversi.
Deve essere anche garantita la consistenza degli archivi, cioè, i dati devono essere significativi (…)
ed utilizzabili (Es: i dati relativi agli importi una fattura (conto corrente, proprietà ....)devono poter
essere collegati al relativo cliente (correntista, padrone ...) ).
I dati contenuti nei database devono quindi, essere protetti da manomissioni, danni e perdite.
La sicurezza significa impedire che il database sia danneggiato da interventi accidentali o non
autorizzati;
L’integrità significa garantire che le operazioni effettuate da altri utenti autorizzati non provochino
una perdita di consistenza ai dati.
Per la creazione e gestione dei database esistono degli applicativi appositi detti DBMS (Data Base
Management System).
Bisogna, però, fare una precisazione tra diverse figure che utilizzano i database:
 Gli utenti finali del database, che utilizzano le informazioni contenute negli archivi;
 Gli amministratori del database (DBA) si occupano della progettazione e della
manutenzione degli archivi.
Inoltre precisiamo che:
 Il database è formato dall’insieme degli archivi;
 Il DBMS è il sistema informatico con cui si può gestire un database.
Limiti nell’organizzazione tradizionale degli archivi (cartacei realizzati
tramite File ) e loro superamento
Le tecniche di gestione delle basi di dati nascono per superare i problemi e i limiti che nascono nelle
tradizionali organizzazioni degli archivi in modo non integrato.
Il problema principale di un archivio è la ridondanza.
La ridondanza dei dati si ha quando questi sono “copiati” più volte all’interno dell’archivio (o di
più archivi).
Questa può provocare diversi problemi:
- L’incongruenza, cioè il mancato aggiornamento di tutti i dati (copie di dati), contenuti negli
archivi;
- L’inefficienza dei dati, cioè i dati aziendali non sono più affidabili.
Fra i limiti individuati nell’organizzazione tradizionale ricordiamo:
- I programmi sono legati agli archivi che essi gestiscono, al variare della struttura di un
archivio devono variare i programmi che lo utilizzano;
- Alcuni dati presenti più volte in archivi diversi come campi di record diversi: si ha
ridondanza;
- L’accesso ai dati è determinato dal tipo di organizzazione assegnata agli archivi, dalle chiavi
e dall’ordine con cui i campi compaiono all’interno del record.
1
-
Ogni programma che modifica i dati di un file si deve occupare di controllare la validità dei
dati immessi
Per eliminare questo problema si utilizzano delle tecniche, che servono appunto a creare delle
relazioni tra i vari record in modo da non dover “duplicare” l’informazione (utilizzo di chiavi
primarie …).
La nuova tipologia di gestione dei database presenta le seguenti caratteristiche fondamentali:
 Indipendenza dalla struttura fisica dei dati, i programmi applicativi sono indipendenti dei
dati fisici;
 Indipendenza dalla struttura logica dei dati, i programmi applicativi sono indipendenti dalla
struttura logica;
 Utilizzo da parte di più utenti, i dati organizzati in un unico database possono essere
utilizzati più utenti e la multiutenza (accesso contemporaneo) è gestita dal DBMC
 Eliminazione della ridondanza, gli stessi dati non compaiono più volte in archivi diversi;
 Eliminazione della inconsistenza, i database non può presentare campi uguali con valori
diversi in archivi diversi;
 Facilità di accesso;
 Integrità dei dati, controlli per evitare anomalie dei dati;
 Sicurezza dei dati, procedure per impedire l’accesso non autorizzato;
 Uso di linguaggi per la gestione del database, attraverso comandi per la manipolazione e
l’interrogazione alla base dati.
La progettazione del database
I contenuti dei database rappresentano i dati della realtà da modellare. Modellare i dati significa
costruire una rappresentazione semplificata della realtà osservata, individuandone gli elementi
caratterizzati e i legami intercorrenti tra loro.
La progettazione di un database avviene su 3 livelli:
1) Livello concettuale, rappresenta la realtà dei dati attraverso un modello chiamato
Il modello concettuale:
E’ definito attraverso uno schema dei dati; questa rappresentazione grafica è indipendente da:
o I valori che saranno assegnati ai dati;
o Le applicazioni degli utenti del database;
o (Le visioni parziali dei dati da parte di particolari utenti.)
Questo metodo consente al database di evolvere nel tempo insieme alla realtà per la quale è stato
progettato e creato.
Il modello concettuale rappresenta un patrimonio importante per le aziende, poiché descrive i tutti
dati esistenti in azienda.
2) Livello logico, descrive la composizione ed il formato dei dati nel loro aspetto di struttura
logica di dati attraverso il
Il modello logico:
Nel passaggio dal modello concettuale al modello logico l’insieme dei dati è dotato di una
struttura che deve facilitarne:
o La manipolazione dei dati;
o L’interrogazione, la possibilità di ritrovare i dati.
in pratica programmatori e/o utenti finali utilizzano (creano, vedono, modificano) i dati
secondo il modello logico.
Esistono 3 tipi di modelli logici:
 Gerarchico
 Reticolare
2

Relazionale
3) Livello fisico, è l’effettiva installazione degli archivi elettronici, cioè è l’implementazione
del livello logico.
Le strutture del modello logico sono implementate selle memorie di massa realizzando in
pratica il modello fisico della base di dati (di cui il programmatore e l’utente finale possono
totalmente disinteressarsi).
L’attività di progettazione consente prima di tutto di costruire una rappresentazione della realtà in
modo indipendente dalla struttura dei dati.
Riassumendo:
1) (Livello CONCETTUALE) Prima di tutto sono individuati i dati che sono significativi,
ed è definito lo schema concettuale rappresentativo della realtà (Modello E/R).
2) (Livello LOGICO) Vengono poi definite le strutture logiche di dati che saranno
utilizzare da utenti e programmi (tabelle e associazioni)
3) (Livello FISICO)infine tali strutture sono implementate (automaticamente dal DBMS)
memorizzandole su un supporto fisico di registrazione e si ottiene, quindi, il database.
LIVELLO CONCETTUALE: Il modello entità/associazioni
Il modello entità/associazioni (entity/relationship) è uno strumento per analizzare le caratteristiche
di una realtà, per costruire un modello concettuale dei dati.
Risultato di questo lavoro di analisi è la rappresentazione grafica detta schema E/R, che mette in
evidenza gli aspetti fondamentali del modello concettuale con i dati caratterizzanti e le associazioni
tra essi.
Gli elementi di un modello E/R sono:
- Entità
- Attributi
- Associazioni
L’entità è un oggetto che ha un significato anche quando è considerato in modo isolato ed è di
interesse per la realtà che si vuole modellare;
Le entità si classificano definendone il tipo di entità attraverso un nome.
Le istanze sono i singoli elementi che appartengono ad un'unica entità.
Per esempio: gli studenti di una scuola sono racchiusi tutti nell’entità Studenti.
La rappresentazione grafica dell’entità è identificata da un rettangolo.
L’associazione è un legame che stabilisce un’interazione tra 2 entità.
Ogni associazione ha 2 versi con specifici significati diversi.
La rappresentazione grafica dell’associazione è identificata da una linea.
Gli attributi rappresentano le proprietà delle entità e talvolta delle associazioni.
Le caratteristiche di ogni attributi sono:
- Il formato, il tipo di valore che assume;
- l’opzionalità, la possibilità di non essere inserito.
Il valore nullo rappresenta un’informazione mancante.
L’insieme dei possibili valori assunti da un attributo si chiama dominio dell’attributo.
3
Prende il nome di chiave primaria (o Identificatore Univoco) l’insieme di uno o più attributi,
che consentono di distinguere un’istanza dall’altra per la stessa entità (identificano in maniera
univoca l’istanza) .
La rappresentazione grafica delle chiavi primarie è costituita dal post-fisso “PK” per tutti gli
attributi o dalla sottolineatura dell’ (degli) attributo (i).
Le associazioni tra entità
Un’associazione può essere obbligatoria (deve essere sempre presente), oppure opzionale (può non
essere presente).
La rappresentazione grafica dell’associazione obbligatoria è una linea continua, invece, per quella
opzionale la linea è tratteggiata.
Il grado di un verso dell’associazione è la caratteristica che indica quante istanze dell’entità di
arrivo si associano all’istanza dell’entità di partenza.
Il grado può essere possono essere di 3 tipi:
1) Associazione 1:N (uno a molti) o semplice;
ad un elemento di E1 corrispondono più elementi di E2, mentre, ad ogni elemento di
E2 corrisponde un e un solo elemento dell’insieme .
2) Associazione 1:1 (uno a uno) o biunivoca;
ad ogni elemento dell’insieme E1 corrisponde uno e un solo elemento dell’insieme
E2
3) Associazione N:N (molti a molti) o complessa;
ad ogni elemento dell’insieme E1 possono corrispondere più elementi dell’insieme
E2 e viceversa.
Rappresentazione grafica Schema Concettuale
Attributo 1: tipo1
Tipo associazione
(cardinalità)
Attributo 2: tipo2
Nome Entità 1
1
Nome
Associazione
Attributo 1: tipo1
N
Attributo 2: tipo2
Nome Entità 2
Attributo 3: tipo3
Attributo 1: tipo1
Attributo 2: tipo2
Identificatore UNIVOCO
Eventuali attributi associazione
4