SQLGetInfo-Unterstützung

Wenn odbc 2. x-Anwendung ruft SQLGetInfo mit einem ODBC 3*.x*-Treiber auf. Die InfoType-Argumente in der folgenden Tabelle müssen unterstützt werden.

Infotyp Gibt zurück
SQL_ALTER_TABLE (ODBC 2.0) Hinweis: Dieser Informationstyp ist nicht veraltet. die Bitmasken in der Spalte rechts sind veraltet. Eine SQLINTEGER-Bitmaske, die die Klauseln in der ALTER TABLE-Anweisung aufzählt, die von der Datenquelle unterstützt wird.

Die folgenden Bitmasken werden verwendet, um zu bestimmen, welche Klauseln unterstützt werden:

SQL_AT_DROP_COLUMN = Die Möglichkeit zum Löschen von Spalten wird unterstützt. Ob dies zu Kaskaden- oder Einschränkungsverhalten führt, ist treiberdefiniert. (ODBC 2.0)

SQL_AT_ADD_COLUMN = Die Möglichkeit, mehrere Spalten in einer einzelnen ALTER TABLE-Anweisung hinzuzufügen, wird unterstützt. Dieses Bit wird nicht mit anderen SQL_AT_ADD_COLUMN_XXX Bits oder SQL_AT_CONSTRAINT_XXX Bits kombiniert. (ODBC 2.0)
SQL_FETCH_DIRECTION (ODBC 1.0)

Der Informationstyp wurde in ODBC 1.0 eingeführt. jede Bitmaske ist mit der Version beschriftet, in der sie eingeführt wurde.
Eine SQLINTEGER-Bitmaske, die die unterstützten Abrufrichtungsoptionen aufzählt.

Die folgenden Bitmasken werden in Verbindung mit dem Flag verwendet, um zu bestimmen, welche Optionen unterstützt werden:

SQL_FD_FETCH_NEXT (ODBC 1.0) SQL_FD_FETCH_FIRST (ODBC 1.0) SQL_FD_FETCH_LAST (ODBC 1.0) SQL_FD_FETCH_PRIOR (ODBC 1.0) SQL_FD_FETCH_ABSOLUTE (ODBC 1.0) SQL_FD_FETCH_RELATIVE (ODBC 1.0) SQL_FD_FETCH_BOOKMARK (ODBC 2.0)
SQL_LOCK_TYPES (ODBC 2.0) Eine SQLINTEGER-Bitmaske, die die unterstützten Sperrtypen für das fLock-Argument in SQLSetPos aufzählt.

Die folgenden Bitmasken werden in Verbindung mit dem Flag verwendet, um zu bestimmen, welche Sperrtypen unterstützt werden:

SQL_LCK_NO_CHANGE SQL_LCK_EXCLUSIVE SQL_LCK_UNLOCK
SQL_ODBC_API_CONFORMANCE (ODBC 1.0) Ein SQLSMALLINT-Wert, der die ODBC-Konformität angibt.

SQL_OAC_NONE = Keine

SQL_OAC_LEVEL1 = Level 1 wird unterstützt

SQL_OAC_LEVEL2 = Level 2 wird unterstützt
SQL_ODBC_SQL_CONFORMANCE (ODBC 1.0) Ein SQLSMALLINT-Wert, der die vom Treiber unterstützte SQL-Grammatik angibt. Eine Definition von SQL-Konformitätsstufen finden Sie unter Anhang C: SQL-Grammatik .

SQL_OSC_MINIMUM = Mindestgrammatik unterstützt

SQL_OSC_CORE = Kerngrammatik unterstützt

SQL_OSC_EXTENDED = Erweiterte Grammatik unterstützt
SQL_POS_OPERATIONS (ODBC 2.0) Eine SQLINTEGER-Bitmaske, die die unterstützten Vorgänge in SQLSetPos aufzählt.

Die folgenden Bitmasken werden in Verbindung mit dem Flag verwendet, um zu bestimmen, welche Optionen unterstützt werden:

SQL_POS_POSITION (ODBC 2.0) SQL_POS_REFRESH (ODBC 2.0) SQL_POS_UPDATE (ODBC 2.0) SQL_POS_DELETE (ODBC 2.0) SQL_POS_ADD (ODBC 2.0)
SQL_POSITIONED_STATEMENTS (ODBC 2.0) Eine SQLINTEGER-Bitmaske, die die unterstützten positionierten SQL-Anweisungen aufzählt.

Die folgenden Bitmasken werden verwendet, um zu bestimmen, welche Anweisungen unterstützt werden:

SQL_PS_POSITIONED_DELETE SQL_PS_POSITIONED_UPDATE SQL_PS_SELECT_FOR_UPDATE
SQL_SCROLL_CONCURRENCY (ODBC 1.0) Eine SQLINTEGER-Bitmaske, die die für den Cursor unterstützten Optionen für die Parallelitätssteuerung aufzählt.

Die folgenden Bitmasken werden verwendet, um zu bestimmen, welche Optionen unterstützt werden:

SQL_SCCO_READ_ONLY = Cursor ist schreibgeschützt. Es sind keine Updates zulässig.

SQL_SCCO_LOCK = Cursor verwendet die niedrigste Sperrebene, die ausreichend ist, um sicherzustellen, dass die Zeile aktualisiert werden kann.

SQL_SCCO_OPT_ROWVER = Cursor verwendet eine optimistische Parallelitätssteuerung, die Zeilenversionen wie SQLBase ROWID oder Sybase TIMESTAMP vergleicht.

SQL_SCCO_OPT_VALUES = Cursor verwendet eine optimistische Parallelitätssteuerung, um Werte zu vergleichen.
SQL_STATIC_SENSITIVITY (ODBC 2.0) Eine SQLINTEGER-Bitmaske, die aufzählt, ob Von einer Anwendung vorgenommene Änderungen an einem statischen oder keysetgesteuerten Cursor über SQLSetPos oder positionierte Update- oder Löschanweisungen von dieser Anwendung erkannt werden können.

SQL_SS_ADDITIONS = Hinzugefügte Zeilen sind für den Cursor sichtbar; Der Cursor kann zu diesen Zeilen scrollen. Wobei diese Zeilen dem Cursor hinzugefügt werden, ist treiberabhängig.

SQL_SS_DELETIONS = Gelöschte Zeilen sind für den Cursor nicht mehr verfügbar und hinterlassen kein "Loch" im Resultset; Nachdem der Cursor aus einer gelöschten Zeile scrollt, kann er nicht zu dieser Zeile zurückkehren.

SQL_SS_UPDATES = Aktualisierungen zeilen für den Cursor sichtbar sind. Wenn der Cursor von einer aktualisierten Zeile scrollt und zu einer aktualisierten Zeile zurückkehrt, sind die vom Cursor zurückgegebenen Daten die aktualisierten Daten, nicht die ursprünglichen Daten. Diese Option gilt nur für statische Cursor oder Updates für Keyset-gesteuerte Cursor, die den Schlüssel nicht aktualisieren. Diese Option gilt nicht für einen dynamischen Cursor oder für den Fall, dass eine Taste in einem gemischten Cursor geändert wird.

Ob eine Anwendung Änderungen am Resultset von anderen Benutzern erkennen kann, einschließlich anderer Cursor in derselben Anwendung, hängt vom Cursortyp ab.

Eine ODBC 3*.x*-Anwendung, die mit einem ODBC 3*.x*-Treiber arbeitet, sollte SQLGetInfo nicht mit den in der vorherigen Tabelle beschriebenen InfoType-Argumenten aufrufen, sondern die im folgenden Absatz aufgeführten ODBC 3*.x* -InfoType-Argumente verwenden. Zwischen den in ODBC 2 verwendeten InfoType-Argumenten besteht keine 1:1-Korrespondenz. x und die in ODBC 3*.x* verwendeten. Eine ODBC 3*.x*-Anwendung, die mit ODBC 2 arbeitet. Der x-Treiber sollte hingegen die zuvor beschriebenen InfoType-Argumente verwenden.

Einige der Informationstypen in der vorherigen Tabelle sind zugunsten der Informationstypen der Cursorattribute veraltet. Diese veralteten Informationstypen sind SQL_FETCH_DIRECTION, SQL_LOCK_TYPES, SQL_POS_OPERATIONS, SQL_POSITIONED_STATEMENTS, SQL_SCROLL_CONCURRENCY und SQL_STATIC_SENSITIVITY. Die neuen Cursorattributetypen sind SQL_XXX_CURSOR_ATTRIBUTES1and SQL_XXX_CURSOR_ATTRIBUTES2, wobei XXX gleich DYNAMIC, FORWARD_ONLY, KEYSET_DRIVEN oder STATIC ist. Jeder der neuen Typen gibt die Treiberfunktionen für einen einzelnen Cursortyp an. Weitere Informationen zu diesen Optionen finden Sie in der Beschreibung der SQLGetInfo-Funktion .