Domini per gli attributi
|
Agli attributi possono essere associati domini diversi e per ogni dominio si possono
specifcare ulteriori proprietà. Ne vedremo brevemente alcuni.
- Testo (Text): permette di rappresentare sequenze di caratteri.
Ogni dominio ha un suo insieme di proprietà, nel caso del Testo si potranno
modificare quelle visualizzate nella seguente finstra.
Finestra delle proprietà del dominio di tipo Testo
Osservate che in questo modo stiamo definendo dei vincoli sul dominio
degli attributi, vincoli che permettono di prevenire possibili errori
durante la fase di inserimento dei dati nella base di dati.
Possiamo per esempio specificare:
- Dimensione campo (Field size), per definire il numero massimo di
caratteri che possono essere inseriti per quell'attributo (il limite massimo nel
caso del Testo è 255 caratteri).
- Maschera di input, (Input mask) per imporre un formato al testo
che verrà inserito nel campo. Access mette a disposizione il wizard seguente
per scegliere il tipo di formato.
Wizard per il formato del Testo
- Etichetta (Caption), per definire un nome alternativo
dell'attributo da usare nelle maschere e nei report (li vedremo in seguito).
- Valore predefinito (Default value), per specificare un
valore di default per l'attributo. Tutte le volte che si inserisce una
nuova ennupla (riga) in una tabella, il valore di default comparirà
come valore dell'attributo.
- Valido se (Validation rule), permette di associare un
vincolo all'attributo (** ricordate l'esempio del voto che deve essere
compreso tra 18 e 30?). Access verifica automaticamente che ogni valore inserito
in un campo appartenga al dominio specificato per quel campo. Se c'è anche
un vincolo nella proprietà Valido se (Validation rule),
viene fatto un ulteriore controllo.
Per scrivere questo vincolo si può usare il generatore di espressioni
che vedremo nel caso delle query.
- Messaggio errore (Validation text), permette di associare un
messaggio di errore che viene visualizzato quando si inserisce un valore che
non rispetta un vincolo definito nella proprietà
Valido se (Validation rule).
- Richiesto (Required), può assumere i valori Sì
(True) o No (False) e permette di dire se un valore è
obbligatorio o meno.
- Consenti lunghezzi zero (Allow zero length) permette di inserire
stringhe di lunghezza nulla (** una sequenza di caratteri in informatica è
chiamata stringa).
- Indicizzato (Indexed), permette di associare un indice all'attributo.
** Non vedremo gli indici ma di fatto si tratta di strutture dati che permettono
di migliorare le prestazioni della base di dati.
- Compressione Unicode
Ricordate la lezione sulla codifica dell'informazione?
|
Per rappresentare i dati dei campi di tipo Testo (e Memo) in Access 2000 viene utilizzato il sistema
Unicode. In Unicode ogni carattere è rappresentato da due byte.
I sistemi di codifica che memorizzano ogni carattere in un solo byte limitano l'uso a
un'unica tabella di codici, ovvero un set numerato contenente un massimo di 256 caratteri.
Al contrario, Unicode può supportare fino a 65.536 caratteri in quanto rappresenta ogni
carattere con due byte. Di conseguenza, i dati di un campo di tipo Testo (e Memo)
richiedono una maggiore quantità di spazio di memorizzazione rispetto alle precedenti
versioni di Access.
È possibile compensare questa conseguenza della rappresentazione dei caratteri Unicode e garantire
prestazioni ottimali impostando la proprietà Compressione Unicode del campo a Sì.
Così facendo qualsiasi carattere il cui primo byte sia 0 viene compresso al momento della
memorizzazione ed espanso quando viene recuperato.
Siccome il primo byte di un carattere latino (ovvero un carattere di una lingua europea
occidentale come l'inglese, l'italiano o il tedesco) è 0, la rappresentazione dei
caratteri Unicode non ha effetto sulla quantità di spazio richiesta per
la memorizzazione dei dati compressi che consistano esclusivamente di
caratteri latini.
|
Gli altri domini sono visualizzati nel seguente menu a tendina
che si apre posizionando il mouse in qualunque cella della colonna
Tipo di dati (Field type) nella finestra che definisce la
struttura di una tabella.
Ricordate i tipi di dati di
Excel?
A seconda del tipo di dominio selezionato, si potranno specificare delle ulteriori
proprietà (molte sono comuni a più domini).
- Il tipo Memo identifica un testo lungo. Utilizzate il tipo di dati Memo se dovete
memorizzare più di 255 caratteri: un campo Memo può memorizzare circa 64.000 caratteri.
- Il tipo Numerico (Number) serve per i domini numerici (interi,
reali, ...). È possibile decidere quanto spazio occuperà ogni valore
selezionando una voce dal menu a tendina che si può aprire nella finestra
delle proprietà del campo (alla voce Dimensione campo/Field length).
Dimensione attributi di tipo numerico
È anche possibile specificare il numero di cifre decimali che rimarranno
visibili nelle celle (Posizioni decimali/Decimal places).
- Il tipo Data/Ora (Date/Time) permette di creare domini
per la data e l'ora; è disponibile un wizard per la scelta del formato
Wizard per scegliere il formato di data e ora
- Il tipo Valuta (Currency) ** ricordate Excel? permette
di scegliere una particolare valuta all'interno di un insieme predefinito che
viene visualizzato selezionando la proprietà Formato (Format)
nella finestra delle proprietà del campo.
Scelta della valuta
- Il tipo Contatore (AutoNumber) permette di definire un
dominio intero che si incrementa automaticamente ad ogni nuova riga
della tabella. Assume valori univoci e può essere usato come chiave
compatta della tabella stessa.
** quando Access crea un campo chiave in modo automatico in una tabella,
generalmente crea un attributo di nome ID e con dominio
Contatore (AutoNumber)
- Il tipo Sì/No (Yes/No) permette di definire un
dominio che può assumere solo due valori. Nella colonna dell'attributo
corrispondente verranno visualizzate delle caselline: se la casella è
selezionata il valore corrispondente è Sì (Yes),
se non è selezionata il valore è No.
Colonna di un campo Sì/No
- ...
|
Definite correttamente i domini e le proprietà delle vostre tabelle
e poi passate alle prossime istruzioni ...
Torna all'indice
|