Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
L'architettura dei driver rientra in due categorie, a seconda delle istruzioni SQL elaborate dal software:
Driver Basati su File Il driver accede direttamente ai dati fisici. In questo caso, il driver funge sia da driver che da origine dati; ovvero elabora le chiamate ODBC e le istruzioni SQL. Ad esempio, i driver dBASE sono driver basati su file perché dBASE non fornisce un motore di database autonomo che il driver può usare. È importante notare che gli sviluppatori di driver basati su file devono scrivere motori di database personalizzati.
Driver basati su DBMS Il driver accede ai dati fisici attraverso un motore di database separato. In questo caso il driver elabora solo le chiamate ODBC; passa istruzioni SQL al motore di database per l'elaborazione. Ad esempio, i driver Oracle sono driver basati su DBMS perché Oracle dispone di un motore di database autonomo usato dal driver. Dove risiede il motore di database è irrilevante. Può risiedere nello stesso computer del driver o di un computer diverso sulla rete; potrebbe anche essere accessibile tramite un gateway.
L'architettura dei driver è in genere interessante solo per i writer di driver; ovvero, l'architettura del driver in genere non fa differenza per l'applicazione. Tuttavia, l'architettura può influire sul fatto che un'applicazione possa usare SQL specifico di DBMS. Ad esempio, Microsoft Access fornisce un motore di database autonomo. Se un driver di Microsoft Access è basato su DBMS, che accede ai dati tramite questo motore, l'applicazione può passare le istruzioni di Microsoft Access-SQL al motore per l'elaborazione.
Tuttavia, se il driver è basato su file, ovvero contiene un motore proprietario che accede direttamente al file di .mdb di Microsoft Access, qualsiasi tentativo di passare istruzioni SQL specifiche di Microsoft Access al motore genererà errori di sintassi. Il motivo è che è probabile che il motore proprietario implementi solo ODBC SQL.
Questa sezione contiene i seguenti argomenti: