It:Progettare il database "sulla carta"

From NeoWiki

Jump to: navigation, search
Questo articolo fa parte della serie di guide intitolate Verso Base e Ritorno.

Prima di iniziare a creare un nuovo documento di Base in NeoOffice, è importante pensare attentamente a quale tipo di dati si vorranno conservare al suo interno e qual è il modo al quale vi accederai. Progettare il tuo database sulla carta all'inizio ti farà risparmiare ore di frustrazione e di ricostruzione dopo.

Contents

[edit] Prime Domande

Inizia a progettare il tuo database facendoti queste domande:

  • Che tipi di dati ho bisogno di immagazzinare?
Per un diario di un appassionato di ornitologia i dati di cui ci sarà bisogno sono i nomi degli uccelli, le date di avvistamento, le posizioni di avvistamento, le informazioni relative al tipo di escursione o alle condizioni atmosferiche, ecc.
  • Cosa voglio fare con i dati? Che tipo di Rapporto voglio essere in grado di generare?
Per un diario di ornitologia, potremmo voler conoscere:
i dati relativi ad una particolare escursione (p.e. quali tipi di uccelli ho visto al Lago di Massaciuccoli il 1° maggio 2007?);
la lista di tutti gli uccelli visti in un particolare posto indipendentemente dalla data (p.e. tutti gli uccelli visti presso il Lago di Massaciuccoli);
la lista di tutti gli uccelli che si sono visti indipendentemente dal luogo (quali sono le specie viste almeno una volta);
la lista degli uccelli visti in un certo posto in determinate condizioni atmosferiche.
  • Come dovranno essere raggruppati i dati?
Un semplice database lineare (lcome, per esempio, i database prodotti con ClarisWorks/Appleworks) ti permette solo di lavorare con un tabella o un gruppo di dati. Questo limita i tipi di dati che possono essere archiviati ed il modo di farli interagire. I database relazionali come Base (e File Maker Pro e Helix RADE per l'ambiente Classic), ti permette di lavorare con tabelle di dati indipendenti che possono essere messe in relazionein una grande varietà di modi.

Immaginare come raggruppare i dati o di quali tabelle abbiamo bisogno è essenziale. Rifletti attentamente su quali dati sono collegati strettamente e quali dati hanno bisogno di essere indipendenti da altri gruppi di dati. In un semplice database per archiviare della musica, per esempio, potresti volere tre gruppi: Album (nome, data, ecc.), Canzoni e Artisti. Questi potrebbero essere separati perché ogni Album contiene più di una Canzone, ed un Artista (o un Gruppo) produce più di un Album.

Per il diario di un ornitologo il modo più naturale è probabilmente avere questi gruppi:
Uccelli (un record per ogni specie)
Escursioni (un record per ogni escursione)
Luoghi (un record per ogni posto)
Avvistamenti (un record per ogni avvistamento di uccelli)


[edit] Progettare le tabelle ed i campi

Una volta che avrai pensato a queste domande allora sarai pronto ad iniziare a progettare alle tabelle ed ai campi di cui hai bisogno. Le tabelle servono almeno a due scopi differenti:

  1. per immagazzinare i dati essenziali allo scopo del tuo database;
  2. per fare in modo che la coerenza dei dati immessi sia facilitata.

Per lo scopo di questo articolo ho deciso di dividere le tabelle in due catagorie: "Tabelle Essenziali", quelle tabelle che contengono dati essenziali per lo scopo del database, e "Tabelle Convenienti", quelle tabelle la cui esistenza aiuta nell'immissione dei dati. Questi termini sono di mia invenzione, quindi puoi usare i termini che più di aggradano.

[edit] Progettare le Tabelle Essenziali

Fai un elenco di ogni Tabella Essenziale della quale hai bisogno. Includi i nomi di tutti i campi che devono essere inclusi in ogni tabella. Assicurati di includere una "Chiave Primaria" in ogni tabella. Le Chiavi Primarie sono campi il cui contenuto è unico per ogni record. Molto frequentemente la Chiave Primaria è un numero intero auto-generato da Base. Ma, a volte, può avere senso che la Chiave Primaria sia qualcos'altro. Per ogni campo devi decidere di quale tipo di dato hai bisogno (testo, data, numero, si/no, ecc.).

Una volta che hai il tuo elenco iniziale decidi come le tabelle sono relazionate una con l'altra: quali sono i campi in comune tra le tabelle?

Quello qui sotto è l'elenco delle tabelle essenziali per il diario dell'ornitologo:

Tabella Uccelli

Ho usato la lista AOU disponibile come file xls prelevata dal sito web della American Ornithologists' Union's (naturalmente è in inglese). I campi sono definiti dall'intestazione delle colonne. Se volessi un elenco in italiano potresti dare un'occhiata a questo.
Ho aggiunto un campo/colonna ID column/Field per usarlo come Chiave Primaria.

(Per maggiori informazioni sull'uso di un foglio elettronico come base per una tabella, per favore consulta l'articolo Creare una tabella a partire da un foglio elettronico, per ora ancora in inglese).

Tabella Escursioni

ID escursione
Data
Data Partenza
Data Ritorno
Luogo Escursione (in relazione con la tabella Luoghi)
Condizioni Metereologiche
Vento
Temp (come testo)
Partecipanti
Commenti

Tabella Avvistamenti

ID avvistamento
Nome Uccello (in relazione con la tabella Uccelli)
ID escursione (in relazione con la Tabella Escursioni)
Maschio (Si/No)
Femmmina (Si/No)
Piccoli (Si/No)
Commenti (comportamento degli uccelli, ecc.)

{Nota: se vuoi tenere sotto controllo anche l'avvistamento di una famiglia degli uccelli, aggiugni un campo si/no per ogni componente della famiglia)

Tabella Luoghi

Luogo (in relazione con la tabella escursioni)
Comune
Provincia
Stato
Tipo di terreno
Tipo di acqua

Nota che non ci sono relazioni dirette tra la Tabella Escursioni e la Tabella Uccelli, né ce ne sono tra la Tabella Luoghi e la Tabella Avvistamenti o tra la Tabella Luoghi e quella Uccelli. Tuttavia queste tabelle possono essere messe in relazione attraverso le Ricerche nel momento in cui le Ricerche includono una terza tabella che si connette con le due che non ne hanno. Per esempio, mentre la Tabella Avvistamenti e la Tabella Luoghi non hanno una connessione diretta, la tabella Escursioni può agire come intermediaria, visto che ha relazioni con entrambe queste tabelle.

[edit] Pianificare Tabelle Convenienti

Ho chiamato "Tabelle Convenienti" quelle tabelle il cui scopo è principalmente di rendere più facile e coerente l'immissione dei dati. Una volta che siano stati creati dei formulari (maschere), queste tabelle possono essere usate per creare delle Caselle di Riepilogo (List Box) o delle Caselle Combinate (Combo Box), permettendo agli utenti, per esempio, di immettere il tipo di terreno da una lista pre-definita.

For the birder's journal, the following "convenience tables" are planned. In this example, the tables contain only one field (plus, potentially, a primary key):

Condizioni Metereologiche
Vento
Tipo di Terreno
Province
Tipi di Acqua
Comuni
Paesi


[edit] Creare il Documento Database

È giunto finalmente il momento di creare il nuovo documento contenente il database.

Nel menù File scegli Nuovo e quindi Database
Nella finestra Creazione guidata database assicurati che sia selezionato il bottone Crea un nuovo database.
Clicca su Avanti
Assicurati che le impostazioni Si, registra il database e Apri il database per la modifica siamo selezionati.
Clicca su Fine

[edit] I passaggi successivi

Adesso sei pronto per creare le tue tabelle. La creazione delle tabelle è dettagliata nel seguenti articoli:

Creare una tabella da un foglio elettronico (en)
Creare una tabella in vista struttura (en)

Assicurati di prendere appunti su come il tuo database è organizzato. Più tardi ci saranno da prendere alcune decisioni e sarà più facile prenderle se ti potrai riferire a questo elenco di tabelle e campi.

[edit] Link esterni sull'argomento


Questo articolo in altre lingue: English Français
Personal tools