Freigeben über


Standardkonforme Anwendungen und Treiber

Eine standardskonforme Anwendung oder ein Treiber ist eine, die der Open Group CAE-Spezifikation "Datenverwaltung: SQL Call-Level Interface (CLI)" und der ISO/IEC 9075-3:1995 (E) Call-Level Interface (SQL/CLI) entspricht.

ODBC 3.x garantiert die folgenden Features:

  • Eine Anwendung, die in die Open Group- und ISO CLI-Spezifikationen geschrieben wurde, funktioniert mit einem ODBC 3.x-Treiber oder einem standardkonformen Treiber, wenn sie mit den ODBC 3.x-Headerdateien kompiliert und mit ODBC 3.x-Bibliotheken verknüpft ist, und wenn sie über den ODBC 3.x-Treiber-Manager Zugriff auf den Treiber erhält.

  • Ein treiber, der in die Open Group- und ISO CLI-Spezifikationen geschrieben wurde, funktioniert mit einer ODBC 3.x-Anwendung oder einer standardkonformen Anwendung, wenn er mit den ODBC 3.x-Headerdateien kompiliert und mit ODBC 3.x-Bibliotheken verknüpft ist und wenn die Anwendung zugriff auf den Treiber über den ODBC 3.x-Treiber-Manager erhält.

Standardkonforme Anwendungen und Treiber werden mit dem ODBC_STD Kompilierungsflagge kompiliert.

Standardkonforme Anwendungen weisen das folgende Verhalten auf:

  • Wenn eine standardskonforme Anwendung SQLAllocEnv aufruft (was auftreten kann, da SQLAllocEnv eine gültige Funktion in der Open Group und ISO CLI ist), wird der Aufruf zur Kompilierungszeit SQLAllocHandleStd zugeordnet. Daher ruft die Anwendung zur Laufzeit SQLAllocHandleStd auf. Während der Verarbeitung dieses Aufrufs legt der Treiber-Manager das SQL_ATTR_ODBC_VERSION Umgebungsattribut auf SQL_OV_ODBC3 fest. Ein Aufruf von SQLAllocHandleStd entspricht einem Aufruf von SQLAllocHandle mit einem HandleType von SQL_HANDLE_ENV und einem Aufruf von SQLSetEnvAttr , um SQL_ATTR_ODBC_VERSION auf SQL_OV_ODBC3 festzulegen.

  • Wenn eine standardskonforme Anwendung SQLBindParam aufruft (was auftreten kann, da SQLBindParam eine gültige Funktion in der Open Group und ISO CLI ist), ordnet der ODBC 3.x Driver Manager den Aufruf dem entsprechenden Aufruf in SQLBindParameter zu. (Siehe SQLBindParam-Zuordnung in Anhang G: Treiberrichtlinien für Abwärtskompatibilität.)

  • Zur Ausrichtung an der ISO CLI enthalten die ODBC 3.x-Headerdateien Aliase für Informationstypen, die in Aufrufen von SQLGetInfo verwendet werden. Eine standardskonforme Anwendung kann diese Aliase anstelle der ODBC 3.x-Informationstypen verwenden. Weitere Informationen finden Sie im nächsten Thema: Headerdateien.

  • Eine standardskonforme Anwendung muss überprüfen, ob alle unterstützten Features im Treiber unterstützt werden, mit dem sie arbeitet. Wenn Sie das attribut der SQL_ATTR_CURSOR_SCROLLABLE-Anweisung auf SQL_SCROLLABLE festlegen und das attribut der SQL_ATTR_CURSOR_SENSITIVITY-Anweisung auf SQL_INSENSITIVE oder SQL_SENSITIVE festlegen, sind Funktionen, die als optionale Features in den Standards verfügbar sind, aber nicht in der ODBC 3.x Core-Ebene enthalten sind und daher möglicherweise nicht von allen ODBC 3.x-Treibern unterstützt werden. Wenn eine standardskonforme Anwendung diese Funktionen verwendet, sollte überprüft werden, ob der Treiber diese unterstützt.