Sincronizza Indice |
Scarica il progetto |
Testo dell'articolo |
Stampa l'articolo |
L'utilizzo di una fonte dati suppone sempre un accesso diretto o indiretto al database da cui recuperare i dati. L'accesso diretto consiste nel leggere direttamente i files fisici con le istruzioni per la manipolazione di dati binari e lavorare alla cieca; si tratta di un'operazione nella maggior parte dei casi inapplicabile, complessa ed in generale insulsa. Per evitare che il programmatore maneggi complessi archivi, delle più disparate tipologie, si utilizza l'accesso indiretto alla fonte dati.
L'accesso indiretto si basa sull'utilizzo di una o più librerie esterne, che si occuperanno autonomamente di effettuare l'accesso diretto alla fonte dati. Il programmatore Visual Basic dovrà limitarsi a stabilire una connessione tra il programma in sviluppo e la fonte dati mediante un'interfaccia dati. Si definisce interfaccia dati un meccanismo, solitamente una libreria, che consente di stabilire una connessione ad una fonte dati esterna e di maneggiare i dati in essa esistenti. Spesso si utilizza interporre un ulteriore livello tra il programma utilizzatore dei dati e l'interfaccia dati; questo ulteriore livello è detto modello dati. Il diagramma mostrato nella Figura 1 rappresenta le quattro forme più semplici di interfacciamento con una fonte dati.
Modalità di interfacciamento più complesse implicano l'uso di differenti sistemi e quindi ulteriori strati di trasporto e conversione di dati. Si tratta generalmente di combinazioni delle precedenti modalità ma sono utilizzate in progetti di elevata importanza e non saranno quindi trattate in quest'articolo. I Modelli di Dati L'utilizzo di una fonte dati esterna in progetti Visual Basic implica quasi sempre l'utilizzo di un modello di dati che consenta di dare una conformazione ad oggetti, basata su proprietà, metodi ed eventi conosciuti e quanto più possibilmente indipendenti dalla fonte dati cui si accede.
I modelli di dati consentono quindi di interrogare la fonte dati, senza dover conoscere i meccanismi interni che ne regolano lettura e scrittura; sarà il modello di dati ad esporre una serie di membri per effettuare tutte le operazioni possibili. I modelli di dati più conosciuti in ambito Visual Basic sono tre:
La scelta del modello di dati dipende gran parte dalla velocità necessaria o dal tipo di database da gestire. Nella maggior parte dei casi si raccomanda l'uso di ADO perché sempre idoneo a qualsiasi fonte dati, veloce ed aggiornato. L'uso dei modelli di dati DAO ed ADO sarà trattato più avanti in questa sezione. Le Interfacce Dati I modelli dati si basano sempre su un'interfaccia dati che consenta il recupero dei dati dal database, al fine di modellarli secondo la struttura del modello scelto. Il modello DAO è in grado di utilizzare due differenti interfacce dati:
Il modello ADO basa invece tutta la sua attività su un'interfaccia dati chiamata Provider OLE DB; tali Provider possono essere suddivisi in due tipologie:
In linea generale l'accesso mediante provider OLE DB è più veloce dell'accesso tramite ODBC per via di un livello di comunicazione in meno. Tuttavia a causa di alcune problematiche di certi provider OLE DB, la scelta di ODBC a volte si rivela la scelta migliore. In sintesi è bene non fidarsi della pubblicità intorno ad un certo prodotto ma si raccomanda di provare con mano la velocità di entrambi gli accessi e scegliere quello che si rivela più veloce. ODBC tuttavia manca di tantissime caratteristiche presenti nell'interfaccia dati OLE DB.
È anche possibile accedere direttamente all'interfaccia dati senza passare da un modello specifico; si tratta però di un'operazione relativamente complessa e che necessita l'uso dell'API oppure di una Type Library in grado di comunicare con l'interfaccia dati. I Driver Il livello di comunicazione con la fonte dati più basso e diretto. In ambiente Visual Basic i driver vengono impiegati nelle comunicazioni ODBC. L'interfaccia ODBC infatti non consente l'accesso a nessuna fonte dati senza l'utilizzo di una libreria che effettui le comunicazioni necessarie. ODBC infatti espone soltanto una serie di funzioni e tipi di dati standard per tutti i database; i singoli driver si occuperanno quindi di effettuare le dovute conversioni e gli accessi alla fonte dati in maniera corretta. Naturalmente queste operazioni avvengono in maniera invisibile all'utente e spesso in maniera altrettanto invisbile allo sviluppatore del prodotto. Fonti Dati Un piccolo appunto prima di concludere: sono stati utilizzati indifferente i termini fonte dati e database. In linea generale i due concetti si equivalgono ma il primo dei due può indicare qualsiasi gruppo di dati come ad esempio matrici di numeri, caselle di posta elettronica e tanto altro ancora. Il modello di dati ADO si basa proprio su questo concetto; la fonte dati
non deve necessariamente essere un database relazionale, ovvero un gruppo
di dati relazionati, ma può avere qualsiasi forma e caratteristica;
sarà compito del Provider OLE DB riportare queste informazioni
in maniera tabellare. |
La strada ai database si apre proprio in questo punto. Nei capitoli successivi saranno trattati i due modelli più utilizzati (DAO ed ADO) e le succitate interfacce dati per lo sviluppo di un semplice programma di catalogazione di CD-ROM. Fibia
FBI
|
Torna all'indice della sezione Database |