Condividi tramite


Esempio di diagnostica del driver File-Based

Un driver basato su file funge sia da driver ODBC che come origine dati. Può quindi generare errori e avvisi sia come componente in una connessione ODBC che come origine dati. Poiché è anche il componente che si interfaccia con Gestione driver, formatta e restituisce argomenti per SQLGetDiagRec.

Ad esempio, se un driver Microsoft per dBASE non è riuscito ad allocare memoria sufficiente, potrebbe restituire i valori seguenti da SQLGetDiagRec:

SQLSTATE:         "HY001"  
Native Error:      42052  
Diagnostic Msg:   "[Microsoft][ODBC dBASE Driver]Unable to allocate sufficient memory."  

Poiché questo errore non è correlato all'origine dati, il driver ha aggiunto solo prefissi al messaggio di diagnostica per il fornitore ([Microsoft]) e il driver ([ODBC dBASE Driver]).

Se il driver non è riuscito a trovare il file Employee.dbf, potrebbe restituire i valori seguenti da SQLGetDiagRec:

SQLSTATE:         "42S02"  
Native Error:      -1305  
Diagnostic Msg:   "[Microsoft][ODBC dBASE Driver][dBASE]No such table or object"  

Poiché questo errore è stato correlato all'origine dati, il driver ha aggiunto il formato di file dell'origine dati ([dBASE]) come prefisso al messaggio di diagnostica. Poiché il driver era anche il componente che si interfacciava con l'origine dati, aggiungeva prefissi per il fornitore ([Microsoft]) e il driver ([ODBC dBASE Driver]).