基於檔案的驅動程式同時扮演 ODBC 驅動程式與資料來源。 因此,它能作為 ODBC 連線的元件及資料來源產生錯誤與警告。 因為它同時也是與驅動程式管理器介接的元件,因此它會格式化並回傳 SQLGetDiagRec 的參數。
例如,若 Microsoft 的 dBASE 驅動程式無法分配足夠記憶體,可能會從 SQLGetDiagRec 回傳以下數值:
SQLSTATE: "HY001"
Native Error: 42052
Diagnostic Msg: "[Microsoft][ODBC dBASE Driver]Unable to allocate sufficient memory."
由於此錯誤與資料來源無關,驅動程式僅在診斷訊息中新增廠商([Microsoft])及驅動程式([ODBC dBASE 驅動程式])的前綴。
如果驅動程式找不到 Employee.dbf 檔案,可能會從 SQLGetDiagRec 回傳以下數值:
SQLSTATE: "42S02"
Native Error: -1305
Diagnostic Msg: "[Microsoft][ODBC dBASE Driver][dBASE]No such table or object"
由於此錯誤與資料來源相關,驅動程式在診斷訊息前加入了資料來源的檔案格式([dBASE])。 由於驅動程式同時也是與資料來源介面的元件,因此新增了廠商([Microsoft])與驅動程式([ODBC dBASE 驅動程式])的前綴。