ODBC und die Standard-CLI
ODBC richtet sich an die folgenden Spezifikationen und Standards, die mit der Call-Level Interface (CLI) umgehen. (Die ODBC-Features sind eine Obermenge dieser Standards.)
Die Open Group CAE-Spezifikation "Datenverwaltung: SQL Call-Level Interface (CLI)"
ISO/IEC 9075-3:1995 (E) Call-Level Interface (SQL/CLI)
Als Ergebnis dieser Ausrichtung gilt Folgendes:
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. (Weitere Informationen finden Sie unter Standardskonforme Anwendungen und Treiber.
Die Core Interface Conformance Level umfasst alle Features in der ISO CLI und alle nichtoptionalen Features in der Open Group CLI. Optionale Features der Open Group CLI werden in höheren Schnittstellenkonformitätsebenen angezeigt. Da alle ODBC 3.x-Treiber erforderlich sind, um die Features auf der Core-Schnittstellenkonformitätsebene zu unterstützen, gilt Folgendes:
Ein ODBC 3.x-Treiber unterstützt alle Features, die von einer standardkonformen Anwendung verwendet werden.
Eine ODBC 3.x-Anwendung, die nur die Features in ISO CLI verwendet, und die nichtoptionalen Features der Open Group CLI funktionieren mit jedem standardkonformen Treiber.
Zusätzlich zu den Schnittstellenspezifikationen auf Aufrufebene, die in den Standards ISO/IEC und Open Group CLI enthalten sind, implementiert ODBC die folgenden Features. (Einige dieser Features sind in ODBC-Versionen vor ODBC vorhanden.3.x.)
Multirow-Abrufe durch einen einzelnen Funktionsaufruf
Binden an ein Array von Parametern
Unterstützung für Textmarken, einschließlich Abrufen von Textmarken, Textmarken mit variabler Länge und Massenaktualisierung und Löschung durch Lesezeichenvorgänge in nicht zusammenhängenden Zeilen
Zeilenweise Bindung
Bindungsversatz
Unterstützung für Batches von SQL-Anweisungen, entweder in einer gespeicherten Prozedur oder als Abfolge von SQL-Anweisungen, die über SQLExecute oder SQLExecDirect ausgeführt werden
Genaue oder ungefähre Cursorzeilenanzahl
Positionierte Aktualisierungs- und Löschvorgänge und Batchaktualisierungen und Löschvorgänge nach Funktionsaufruf (SQLSetPos)
Katalogfunktionen, die Informationen aus dem Informationsschema extrahieren, ohne dass unterstützende Informationsschemaansichten erforderlich sind
Escapesequenzen für äußere Verknüpfungen, skalare Funktionen, Datetime-Literale, Intervallliterale und gespeicherte Prozeduren
Codeseitenübersetzungsbibliotheken
Berichterstellung der ANSI-Konformitätsstufe und SQL-Unterstützung eines Treibers
Automatische On-Demand-Population des Implementierungsparameterdeskriptors
Erweiterte Diagnose- und Zeilen- und Parameterstatusarrays
Datetime-, Intervall-, numerische/dezimale und 64-Bit-Ganzzahl-Anwendungspuffertypen
Asynchrone Ausführung
Unterstützung für gespeicherte Prozeduren, einschließlich Escapesequenzen, Ausgabeparameterbindungsmechanismen und Katalogfunktionen
Verbinden ion-Verbesserungen, einschließlich Unterstützung für Verbindungsattribute und Attributbrowsen