|
Introduzione
ai database
Per comprendere appieno cos'è un
Data Base e quali sono i vantaggi legati al suo impiego, soprattutto nel
settore gestionale, è necessario definire in modo esatto e preciso
cosa si intende per:
-
Data Base;
-
Data Base Management System (DBMS).
Un Data base può essere
definito come un insieme di dati strettamente correlati, memorizzati su
un supporto di memoria di massa, costituenti un tutt'uno, che possono essere
manipolati, da più programmi applicativi; oppure possiamo dire che
è un sistema di gestione di dati integrati, ricompilati e immagazzinati
secondo precisi criteri, necessari all'attività che si deve svolgere.
I programmi di gestione di Data Base realizzano una serie di operazioni
che consentono l'accesso a dati immagazzinati in un PC e che ne permettono
altresì una certa manipolazione. Tali operazioni consistono fondamentalmente
in: immissione e cancellazione di dati, modifica di dati già introdotti,
ricerca di dati attraverso criteri definiti dall'utente, ordinamento e
classificazione dei dati singolarmente o secondo vari criteri, stampa di
rapporti o relazioni.
Invece,
Un Data base Management System (DBMS)
è
un sistema software per la gestione di basi dati; esso si occupa dell'aggiornamento,
della manutenzione e della consultazione di un insieme di registrazioni
contenute in un supporto di memoria di massa.
Il DBMS, pertanto, è un insieme di programmi, che sono
rivolti alla gestione di dati memorizzati in archivi.
Ovviamente, tra Data Base e DBMS esiste una forte interazione, per cui
spesso si tende a considerarli due parti distinte di un unico oggetto:
il DBMS rappresenta la parte attiva, il Data Base quella passiva,
sulla quale il DBMS opera.
L'utilizzo di un programma di
Data Base presenta i seguenti vantaggi:
-
permette un "uso amichevole" delle procedure di gestione di facile utilizzo
all'utente, rendendo trasparenti allo stesso tutti i dettagli fisici del
programma;
-
evita la programmazione per compiti comuni: il programma incorpora una
serie di funzioni che consentono di svolgere operazioni senza la necessità
di un linguaggio di programmazione;
riduce le ripetitività: basti pensare
agli archivi (cartacei) delle biblioteche, in cui i volumi sono ordinati
per autori e per titoli;
-
un Data Base permette di relazionare dati tra loro, ciò che riduce
di molto le duplicazioni;
-
riduce i costi: i Data Base sono prodotti standard, per questo risultano
più economici di applicazioni su misura;
-
garantisce un certo livello di sicurezza, soprattutto in ambienti multiutente.
Tipi di Data Base
Con un certo grado di approssimazione possiamo dire che esistono due
modi di suddividere e gestire l'informazione: gestori di file e Data Base
relazionali.
Gestori di file. Ogni base di dati è rappresentata da
un file, che si divide in record: il record rappresenta uno degli elementi
che si desidera registrare, ed è composto a sua volta da campi,
cioè informazioni elementari che caratterizzano ogni entità
da classificare. Con un gestore di file, ogni informazione si immagazzina
in un unico file e le operazioni sui dati interessano un solo record per
volta.
Data Base relazionali. Si presentano in forma tabellare in cui
le righe rappresentano i record e le colonne rappresentano i campi. Le
operazioni realizzate con questo tipo di Data Base riguardano le tabelle
e non i record individuali, come nel caso dei gestori di file.
Oggi i principali Data Base in circolazione sono di tipo relazionale,
ciò perché praticamente tutti gli insiemi di dati che corrispondono
a entità complesse organizzate come imprese, scuole, associazioni
varie,… implicano collegamenti tra i vari dati ad esempio: ai fornitori
sono collegate le merci, agli alunni i corsi, e così via.
La norma fondamentale per stabilire relazioni tra tabelle, cioè
tra contenitori di dati correlabili, è che il campo di collegamento
non deve avere ripetizioni, ossia ogni record deve potere essere identificato
in maniera univoca.
Il campo che permette l'identificazione di ogni record è detto
"chiave primaria" e deve essere comune alle tabelle che si intende correlare.
Si possono stabilire tre tipi di relazione:
-
uno a uno: si tratta di relazioni tra elementi che hanno una corrispondenza
univoca: ad un elemento di una tabella ne corrisponde uno soltanto in un'altra
e viceversa;
-
uno a molti: sono relazioni che si stabiliscono tra un record di
una tabella e più records di un'altra tabella, ma non il contrario;
-
molti a molti: un record può essere relazionato a più
di un record di un'altra tabella e viceversa; questo tipo di relazione
è normalmente definita tramite una terza tabella che costituisce
un "ponte" tra le due da relazionare.
Progettazione
di un Data Base
La progettazione può essere considerata essenzialmente
un processo di analisi del contesto da rappresentare, e di astrazione di
un modello che descrive mediante uno schema le informazioni significative.
I passi fondamentali da compiere per progettare un Data Base sono essenzialmente
tre:
|
MODELLO
CONCETTUALE (in cui viene schematizzata la realtà) ; |
|
MODELLO
LOGICO (che produce lo schema logico) ; |
|
MODELLO
FISICO (che produce lo schema fisico) ; |
I modelli che realizzano questi tre passaggi vengono chiamati semantici è il più noto tra essi e il Modello Entità - Relazione
(E-R).
Il Modello Entità - Relazione è un Modello Concettuale
atto a descrivere il livello concettuale di un Data Base che fa uso dei
componenti essenziali quali entità, attributi e relazioni e ciascuna
classe di oggetti individuata nella realtà deve appartenere ad una
di queste categorie primarie.
Con il modello Entità Relazione gli oggetti astratti o concreti
della realtà di interesse vengono classificati come entità.
Ciascuna entità possiede delle proprietà caratteristiche
chiamate attributi.
MODELLO CONCETTUALE
:
Il modello Concettuale, introduce
una rappresentazione grafica dello schema concettuale. Esso prevede come
prima cosa l’individuazione delle entità, ossia degli oggetti concreti
o astratti, rilevanti per il sistema informativo. Graficamente i tipi di
entità sono rappresentati con il loro nome racchiuso dentro un rettangolo
(vedi figura in basso). Le proprietà caratteristiche di ciascun
insieme di entità vengono descritte mediante l’uso di attributi,
che si possono distinguere in 3 categorie :
ATTRIBUTI SEMPLICI : sono
quelli che hanno un tipo semplice (integer, real, char).
ATTRIBUTI COMPOSTI : sono
quelli di tipo record, cioè in cui esistono dei sotto attributi.
ATTRIBUTI MULTIPLI : sono
quelli di tipo sequenza, cioè in cui esiste un numero variabile
di sotto attributi.
Le dipendenze o associazioni
(dette anche relazioni) di interesse informativo tra i dati da rappresentare
vengono espresse nello schema entità - associazione, mediante relazioni
tra le corrispondenti entità. Graficamente un insieme di associazioni
viene rappresentato da un arco che collega i rettangoli (o entità),
che raffigurano i due insiemi di entità correlati, interrotto da
un rombo che contiene il nome dell’insieme di associazioni.
Un‘associazione viene classificata
in base alla sua forma, e può essere del tipo :
|
1
: 1 quando ad un elemento del primo insieme corrisponde uno
ed un solo elemento del secondo insieme, e viceversa. |
|
1 :
N quando ad ogni elemento del primo
insieme corrispondono più elementi del secondo, mentre ad ogni elemento
del secondo corrisponde un elemento del primo.
|
|
N
: M quando ad ogni elemento del primo insieme possono
corrispondere più elementi del secondo insieme, e viceversa. |
Schema
Concettuale di Data Base MOBILI

SCHEMA LOGICO:
Un modello (o schema) logico di dati è una tecnica
di organizzazione e di accesso ai dati, che deve essere utilizzata dal
DBMS. A differenza dello schema concettuale, quello logico dipende strettamente
dal modello logico di rappresentazione dei dati utilizzato dal DBMS (gerarchico,
reticolare o relazionale). Si farà riferimento in particolare allo
schema logico utilizzato nei DBMS relazionali, denominato schema logico
relazionale.
Lo Schema Logico Relazionale
ha una struttura simile al diagramma entità, differisce da esso
per l’esplicita dichiarazione delle chiavi primarie, l’inserimento delle
chiavi esterne e l’aggiunta di opportune tabelle per rappresentare relazioni
del tipo N : M.
Partendo da uno schema concettuale,
si passa alla creazione di uno schema logico relazionale applicando le
seguenti regole:
-
Le entità dello schema
concettuale, diventano tabelle.
-
Le relazioni tra entità
dello schema concettuale, nello schema logico relazionale vengono rappresentate
facendo uso di chiavi esterne, ossia un insieme di attributi che corrispondono
a quelli che costituiscono la chiave primaria di un’altra tabella, e stabiliscono
quindi un riferimento tra le righe delle due tabelle.
In particolare per rappresentare una relazione tra le due
tabelle T1 e T2 si distinguono 3 casi:
1) Relazione 1: 1;
agli attributi di T1 viene aggiunta, come chiave esterna, la chiave primaria
di T2, e viceversa.
Esempio: supponiamo di avere le due entità:
nazioni di attributi cod_naz, nome, superficie, popolazione e capitali
di attributi cod_cap, nome, superficie, popolazione. La relazione che intercorre
tra le due entità è evidentemente 1:1. La traduzione nello
schema relazionale avviene creando due tabelle dove una (nazioni per esempio)
contiene la chiave primaria dell'altra. In questo modo si è realizzato
un riferimento tra la nazione e la sua capitale..
2) Relazione 1: N; agli attributi di T2 viene aggiunta,
come chiave esterna, la chiave primaria di T1, ma non viceversa.
Esempio: nella relazione 1:n si opera in maniera analoga, ma
non è possibile invertire le chiavi esterne. Dalle entità
studenti e libri nel Data Base biblioteca si ottengono le seguenti tabelle
(la chiave primaria è identificata con * e quella esterna con #).
3) Relazione N:M; in questo caso viene definita
una nuova tabella, chiamata T3, che contiene, come chiavi esterne, la chiave
primaria sia di T1, che di T2, ed eventuali attributi contenuti nella relativa
relazione che li lega.
Esempio: la relazione n:m tra autori e libri si realizza invece
introducendo un'altra tabella (il nome di quest'ultima è arbitrario)
che contiene le chiavi primarie di entrambe le due tabelle precedenti.
Sommario
|