PROPRIETA' CAMPI
I database relazionali sono
costituiti, in genere, da molte tabelle in relazione tra di loro. Nella fase di
progettazione si devono stabilire le tabelle da realizzare e le loro proprietà,
basandosi sul risultato dell’analisi dei requisiti.
Di solito non è difficile capire quali sono le tabelle
necessarie per la base di dati: un archivio rappresenta una particolare
situazione della vita reale, ogni elemento o oggetto che si deve memorizzare è
una tabella.
Ad ogni tabella si deve assegnare un NOME, che, per
convenzione, è al plurale, per esempio Studenti, Libri o Clienti. Anche
l’iniziale maiuscola è una convenzione. Il nome al plurale indica che la tabella
non è un elemento o un singolo oggetto, ma è un contenitore di oggetti dello
stesso tipo: la tabella Studenti conterrà tutti gli studenti, la tabella è
unica, ma gli studenti possono essere migliaia.
Ogni COLONNA della tabella memorizza i “campi di
interesse”, cioè le informazioni utili per la base di dati. Si deve decidere,
per ogni tabella, quante colonne dovrà avere. Ad ogni colonna si assegna un
nome, chiamato CAMPO, diverso da quelli delle altre colonne. Il nome
delle colonne è, per convenzione, scritto al singolare, per esempio la tabella
studenti potrebbe avere i campi Matricola, Cognome, Nome, Indirizzo, Numero di
telefono, ecc. Anche in questo caso, l’iniziale maiuscola è una convenzione. Il
nome del campo indica che in quella colonna verranno memorizzate le informazioni
degli studenti, relative solo a quel “campo di interesse”: nella colonna Cognome
verranno memorizzati solo i cognomi degli studenti, ogni altra informazione che
non sia un cognome non deve essere memorizzata in questa colonna. Se per errore
si memorizza il nome di uno studente nel campo Cognome, quel nome per il
database verrebbe considerato il cognome dello studente stesso.
Per ogni campo si devono poi stabilire le PROPRIETÀ,
cioè le caratteristiche e i vincoli dei dati che verranno inseriti nella
colonna. Si deve decidere se il campo contiene un testo, un numero, una valuta,
o un altro tipo di dato. A seconda del tipo di dato scelto si devono stabilire
alcuni vincoli, per esempio per i testi la lunghezza in caratteri, per i numeri
il tipo (intero, reale, percentuale, frazione).
La figura 4.01 illustra un esempio.
FIG. 4.01
La figura 4.01 rappresenta lo
schema della tabella, quello che abbiamo chiamato METADATI, la tabella vera e
propria si avrà solo dopo la realizzazione del database, con l’inserimento delle
informazioni. Per il momento si stanno analizzando le caratteristiche
principali, in seguito si studieranno in dettaglio tutti i tipi di dati e le
relative proprietà.
Le informazioni riguardanti gli studenti saranno memorizzate sulle RIGHE
della tabella. Ogni riga contiene un unico elemento o soggetto: ogni studente
sarà registrato su una sola riga, se due righe memorizzano le stesse
informazioni (stesso nome, cognome, data di nascita, ecc.), quelle due righe
rappresentano, per l’archivio, due persone diverse. I dati memorizzati in una
riga, che rappresentano un elemento della tabella, si chiamano RECORD. Un
record può essere per esempio uno studente, un libro, un cliente. È possibile
che ci siano informazioni mancanti in alcuni campi di un record, per esempio uno
studente potrebbe non avere il numero di telefono.
La figura 4.02 visualizza un esempio di tabella con record.
FIG. 4.02
La scelta dei campi e delle relative proprietà dipende dalla base di dati che deve essere realizzata. La stessa tabella, con lo stesso nome e che rappresenta lo stesso tipo di elementi, in database diversi potrebbe essere caratterizzata da campi diversi.
ESEMPIO.
Di seguito sono visualizzate diverse possibili tabelle per rappresentare le
persone, in ambiti differenti. I campi, per problemi di spazio, sono
rappresentati sulle righe.
La figura 4.03 visualizza una tabella che memorizza un elenco di iscritti ad un
corso.
FIG. 4.03
La figura 4.04 visualizza una
tabella che memorizza un elenco di dipendenti di un’azienda.
FIG. 4.04
La figura 4.05 visualizza una
tabella che memorizza un elenco di clienti.
FIG. 4.05
Tutte queste tabelle hanno come “soggetto” persone, ma i campi di interesse sono completamente diversi. Senza un’analisi dei requisiti accurata, la realizzazione della tabella dipendenti potrebbe essere completamente diversa, a seconda di chi realizza l’archivio. È solo attraverso l’analisi dei requisiti che si può stabilire esattamente quali campi deve avere una tabella e quali proprietà devono avere i campi stessi.