Rolle des Treibers
Der Treiber sucht nach allen Fehlern und Warnungen, die vom Treiber-Manager nicht überprüft werden, und sortiert Statusdatensätze, die generiert werden. (ODBC 2.x-Treiber sortiert keine Statusdatensätze.) Dazu gehören Fehler und Warnungen beim Abschneiden von Daten, Datenkonvertierung, Syntax und einigen Zustandsübergängen. Der Treiber überprüft möglicherweise auch Fehler und Warnungen, die teilweise vom Treiber-Manager überprüft wurden. Obwohl der Treiber-Manager beispielsweise überprüft, ob der Wert von Operation in SQLSetPos legal ist, muss der Treiber überprüfen, ob er unterstützt wird.
Der Treiber ordnet auch systemeigene Fehler - d. h. Fehler, die von der Datenquelle zurückgegeben werden - sqlSTATEs zu. Beispielsweise kann der Treiber eine Reihe unterschiedlicher systemeigener Fehler für illegale SQL-Syntax sqlSTATE 42000 zuordnen (Syntaxfehler oder Zugriffsverletzung). Der Treiber gibt die systemeigene Fehlernummer im feld SQL_DIAG_NATIVE des Statusdatensatzes zurück. Die Treiberdokumentation sollte zeigen, wie Fehler und Warnungen aus der Datenquelle argumenten in SQLGetDiagRec und SQLGetDiagField zugeordnet werden.