I tipi di dato in Access

Giorgio Borelli

Visualizzazione struttura di una tabella Access con vari tipi di datoQuando si progetta un database per un'applicativo, dopo aver pensato bene e fatta un'analisi dell'architettura della sorgente dati e steso il diagramma ERD (Entità Relazioni), il passo successivo è quello di cominciare a definire le tabelle con i propri tipi.

La definizione dei tipi in un database è un'operazione molto importante, poichè la scelta adeguata del tipo di dato adatto a rappresentare un'informazione, costituisce la base per lo sviluppo di un'applicazione funzionale e manutenibile, e permette inoltre di ottimizzare le tabelle, archiviando i dati nel loro formato corretto e rispare bytes gestendo il tipo corretto.

Anche per Access vale quanto detto, sebbene sia usato spesso per applicazioni di piccole dimensioni, la definizione dei tipi in Access assume un'importanza se vogliamo ancora più rilevante, proprio per ottimizzare al meglio la base di dati e risparmiare spazio, sfruttando così appieno le sue potenzialità ed il limite di 2Gb di spazio per l'archiviazione dati che esso ci mette a disposizione.

Conoscere e definire i tipi di dati corretti in Access, è di fondamentale importanza per la stesura di un database performante. Andiamo a vedere quali sono i tipi di dati definibili in Access.

I tipi di dati definibili in Access possono riassumersi sostanzialmente in tre Macro Categorie, le quali a loro volta contengono i tipi di dati adatti per la definizione delle informazioni, queste sono:

 

Dati di tipo Numerico

Tra questi tipi di dato rientrano la definizione esclusiva di numeri sui quali è possibile effettuare operazioni matematiche, ed occupano una dimensione in bytes che varia da 1 a 16, a seconda del tipo, questi sono:

  • Byte: rappresenta un valore numerico compreso tra 0 e 255 ed occupa la dimensione di 1 byte, viene spesso usato per definire una Enumerazione o Enum
  • Decimale: rappresenta un valore decimale compreso tra -10^28 e 10^28 ed occupa la dimensione di 12 byte
  • Numero Intero: rappresenta un'intero semplice con valori compresi tra -32768 e 32768, occupa la dimensione di 2 byte, viene usato anche per definire le chiavi secondarie
  • Numero Intero Doppio: rappresenta un'intero ed occupa la dimensione di 4 byte, viene usato anche per definire le chiavi secondarie
  • Numero in Virgola: rappresenta un numero reale con una precisione in virgola di 7 posti, ed occupa una dimensione di 4 byte
  • Numero in Virgola Doppio: rappresenta un numero reale con una precisione in virgola di 15 posti, ed occupa una dimensione di 8 byte
  • Valuta: sono come i dati numerici doppi, solo che possiedono in più la caratteristica di evitare gli arrotondamenti per eccesso, e pertanto sono molto indicati per compiere calcoli monetari e su valute.
  • Contatore o ID Replica: rappresenta un numero naturale crescente (il valore viene progressivamente incrementato alla creazione di ogni nuovo record) con una dimensione di 16 byte, viene spesso usato come GUID o meglio come chiave primaria univoca di una tabella, con la quale si costruiscono le relazioni tra le tabelle in un database Access.

Il calcolo del range di valori acquisibile da ogni tipo è molto semplice, considerato che un byte è formato da 8 bit, e la base è quella binaria, il numero di valori è dato da 2^(n°byte x 8) - 1. Quindi per il tipo Byte (8 bit), avremo: (2^8) - 1 = 256 - 1 = 255 possibili valori.

 

Dati di tipo Testuale

Tra questi tipi di dato rientrano le stringhe, ossia sequenze di caratteri che permettono di definire un testo. I possibili dati di tipo testo vanno scelti in base alle dimensioni che si pensi questi possano occupare e sono solamente due:

  • Testo: rappresenta una stringa testuale di caratteri alfanumerici, lunga al massimo 255 caratteri, ogni carattere occupa la dimensione di un byte, e viene solitamente usato per esprimere testi brevi, come titoli o numeri telefonici. Sebbene lo spazio occupato dal dato è dato dalla lunghezza del testo inserito, in fase di definizione si può impostare anche la lunghezza massima dei caratteri, ad esempio se si è certi che la lunghezza del testo è corta come potrebbe essere un numero telefonico, la lunghezza massima può essere impostata in fase di definizione del tipo a 16, evitando così inutili sprechi di spazio per input non corretti. 
  • Memo: questo tipo di dato come quello testo serve per rappresentare le stringhe, ovvero sequenze di caratteri, soltanto che viene usato per testi più lunghi, è in grado infatti di memorizzare dati per 65.535 caratteri

 

Dati di tipo Particolari

I dati di tipo particolare consentono di archiviare dati che hanno una particolare struttura o formattazione, estendendo di fatto le potenzialità di archiviazione di Access, questi sono:

  • Formato Data e Ora: permette l'archiviazione di date e ore, occupando uno spazio pari ad 8 bytes
  • Valore booleano: rappresenta un valore binario, ovvero che può assumere solo due valori, Vero o Falso, SI o NO.
  • Oggetto OLE: con questo tipo di dato si suole rappresentare file incorporati all'interno del database, come possono essere immagini, documenti Word, Excel e via dicendo, ed ha una capienza massima di 1 Gigabyte. La sigla OLE sta per Object Linking and Embedding, ovvero collegamento e incorporamento di oggetti, con il tipo OLE infatti, oltre ad incorporare gli oggetti direttamente nel database è possibile archiviare un collegamento che punti al file in questione; Questo secondo approccio presenta il grosso vantaggio di allegerire il database e ridurre notevolmente lo spazio occupato dal dato che diventa un semplice collegamento, di contro abbiamo che il file a cui il collegamento fà riferimento deve essere sempre presente sul file system e deve essere gestito opportunamente in caso di cancellazione o modifica del record.
  • Collegamento Ipertestuale: rapppresenta un link di una pagina web, ed è composto da quattro parti: Il testo del link o Anchor Text, l'URL che rappresenta l'indirizzo vero e proprio, il sottoindirizzo e la descrizione che non è altro che il suggerimento o tooltip che viene mostrato all'utente quando si sofferma sul link col mouse.
  • Campo Ricerca: con questo tipo di dato viene mostrata una casella contenente i valori di un'altra tabella sulla quale è possibile effettuare delle ricerche; il riferimento viene creato tramite la chiave primaria, pertanto questo tipo di dato occupa uno spazio di 4 byte.

 

Conclusioni

Come già accennato, conoscere e definire i tipi di dato corretti durante la strutturazione delle tabelle del nostro database è di fondamentale importanza per l'ottimizzazione e le performance non del solo database ma di tutta l'applicazione su cui esso si appoggia. Usare ad esempio un dato di tipo Memo anzichè Testo quando siamo certi che il testo immesso non sarà più lungo di 255 caratteri è un'errore che comporterà un'aggravio in termini di risorse per l'intera applicazione. Fate buon uso allora della scelta dei tipi in un database Access, dove l'esigenze di performance e spazio sono ancora più sentite che in altri database più performanti.

Chiunque volesse aggiungere qualcosa in merito all'argomento o porre una domanda può farlo benissimo tramite i commenti.

Categorie: Access | database

Tags: ,

Pingbacks and trackbacks (1)+

Aggiungi Commento

biuquote
  • Commento
  • Anteprima
Loading