Database
 sql >> Datenbank >  >> RDS >> Database

ODBC 4.0

ODBC ist eine Datenzugriffs-API, mit der eine Anwendung geschrieben werden kann, ohne das Datenbanksystem angeben oder kennen zu müssen, das sie bei der Ausführung verwenden wird, mit anderen Worten, ODBC isoliert die Anwendung von den Besonderheiten des Zugriffs auf eine Datenbank.

Der Veröffentlichungsverlauf von ODBC ist:

Version Freigegeben Beschreibung
1.0 1993 Die erste Version von ODBC. Es existieren nur noch wenige ODBC 1.0-Anwendungen und -Treiber (unter Windows) und unter Linux sind uns keine bekannt.
2.0 1994 Kleine Reorganisation der API (z. B. neuer SQLBindParameter Ersetzen von SQLSetParam ) Kern, Konformitätsänderungen der Ebenen 1 und 2, neue Datentypen.

Es gibt immer noch eine Reihe von ODBC 2.0-Anwendungen und -Treibern. Unter Linux sind die meisten ODBC-Treiber ODBC 3 und die wenigen, die noch ODBC 2.0 sind, werden im Allgemeinen auf 3 verschoben.

Es gab auch ein ODBC 2.5.

3.0 1995 ODBC 3.0 führte eine große Anzahl neuer APIs und ODBC-Deskriptor-Handles ein. Die meisten ODBC-Treiber unter Linux sind jetzt ODBC 3.x und viele Anwendungen sind auch 3.x.
3,5x 1997 Einführung von Unicode.
3,8x 2009 Treiberbewusstes Verbindungspooling, das es einem ODBC-Treiber ermöglicht, die Kosten für die Wiederverwendung einer Verbindung aus dem Pool basierend auf den Verbindungseinstellungen eines Benutzers besser abzuschätzen.

Asynchroner Verbindungsvorgang, der es Anwendungen ermöglicht, beim Start mehrere Verbindungen im Pool zu füllen, sodass nachfolgende Verbindungsanforderungen effizienter bedient werden können.

Treiberspezifische C-Datentypen, die nützlich sind, um neue DBMS-Datentypen zu unterstützen, die vorhandene C-Typen nicht korrekt darstellen. Vor Version 3.8 mussten ODBC-Treiber einen generischen Typ wie SQL_C_BINARY verwenden, um mit DBMS-spezifischen Typen zu arbeiten, die die Anwendung dann rekonstruieren musste.

Gestreamte Ausgabeparameter, die es einer Anwendung ermöglichen, SQLGetData mit einem kleinen Puffer mehrmals aufzurufen, um einen großen Parameterwert abzurufen, wodurch der Speicherbedarf der Anwendung reduziert wird. (Wir stellen ein SQL Server-spezifisches Beispiel für gestreamte Ausgabeparameter in unserem Abschnitt mit C-Beispielen bereit.)

Microsoft hat kürzlich angekündigt, an ODBC 4.0 zu arbeiten, dem ersten bedeutenden Update der ODBC-Spezifikation seit 1997. ODBC 4.0 zielt darauf ab, die Anforderungen moderner Datenspeicher zu erfüllen. Zum Beispiel Daten mit einer hierarchischen Struktur oder eine Datenquelle, die Webauthentifizierung verwendet, um den Zugriff darauf zu kontrollieren.

Die wichtigsten neuen Funktionen von ODBC 4.0 sind:

Funktion Beschreibung
Privatfahrer ODBC-Treiber, die nur für eine bestimmte Anwendung sichtbar sind. Private Treiber werden in der systemweiten Administratoranwendung für ODBC-Datenquellen nicht angezeigt.
Spracherweiterungen durch zusätzliche SQL-Escape-Klauseln ODBC-Escape-Klauseln bieten eine DBMS-neutrale Möglichkeit für Anwendungen, Konstrukte zu verwenden, die nicht Teil von SQL-92 sind. Zum Beispiel Outer Joins, Funktionsausführung, Datetime-Literale und so weiter. ODBC 4.o stellt neue Escape-Sequenzen bereit, um zusätzliche SQL-Konstrukte wie Begrenzungsklauseln sowie andere Erweiterungen von SQL wie die Auswahl eingefügter, aktualisierter oder gelöschter Werte abzudecken.
Halbstrukturierte Daten:Tabellen, deren Schema möglicherweise nicht definiert ist oder sich zeilenweise ändern kann Ein Schema kann aus einer schemalosen Quelle wie einem JSON-, XML- oder CSV-Dokument abgeleitet werden, um eine relationale Standardansicht der Daten bereitzustellen.
Hierarchische Daten:Daten mit verschachtelter Struktur (strukturierte Felder, Listen) Anwendungen, die ODBC 4.x anfordern, sehen möglicherweise eine originalgetreuere Darstellung von hierarchisch strukturierten Daten, die Zeilen-, Sammlungs- und nicht typisierte Datenwerte enthalten.
Web-Authentifizierung Die ODBC-API SQLDriverConnect wurde geändert, um mit den Anforderungen eines Web-Authentifizierungsmechanismus wie OAuth kompatibel zu sein . Beispielsweise wird es möglich sein, SQLDriverConnect zu verwenden um zunächst ein Zugriffstoken mit begrenzter Lebensdauer bereitzustellen und dann die Dauer einer Sitzung mit einem Aktualisierungstoken zu verlängern.