Anweisungsattribute

Anweisungsattribute sind Merkmale der Anweisung. Beispielsweise, ob Textmarken verwendet werden sollen und welche Art von Cursor mit dem Resultset der Anweisung verwendet werden soll, sind Anweisungsattribute.

Anweisungsattribute werden mit SQLSetStmtAttr und ihren aktuellen Einstellungen festgelegt, die mit SQLGetStmtAttr abgerufen wurden. Es besteht keine Anforderung, dass eine Anwendung Alle Anweisungsattribute festgelegt hat; alle Anweisungsattribute verfügen über Standardwerte, von denen einige treiberspezifisch sind.

Wenn ein Anweisungsattribut festgelegt werden kann, hängt von dem Attribut selbst ab. Die Attribute SQL_ATTR_CONCURRENCY, SQL_ATTR_CURSOR_TYPE, SQL_ATTR_SIMULATE_CURSOR und SQL_ATTR_USE_BOOKMARKS Anweisung müssen festgelegt werden, bevor die Anweisung ausgeführt wird. Die Attribute der SQL_ATTR_ASYNC_ENABLE- und SQL_ATTR_NOSCAN-Anweisung können jederzeit festgelegt werden, werden jedoch erst angewendet, wenn die Anweisung erneut verwendet wird. SQL_ATTR_MAX_LENGTH-, SQL_ATTR_MAX_ROWS- und SQL_ATTR_QUERY_TIMEOUT-Anweisungsattribute können jederzeit festgelegt werden, aber es ist treiberspezifisch, ob sie angewendet werden, bevor die Anweisung erneut verwendet wird. Die Attribute der re Standard ing-Anweisung können jederzeit festgelegt werden.

Hinweis

Die Möglichkeit zum Festlegen von Anweisungsattributen auf Verbindungsebene durch Aufrufen von SQLSet Verbinden Attr ist in ODBC 3 veraltet.x. ODBC 3.x-Anwendungen sollten niemals Anweisungsattribute auf Verbindungsebene festlegen. ODBC 3.x-Treiber benötigen diese Funktionalität nur, wenn sie mit ODBC 2 arbeiten sollten.x-Anwendungen . Weitere Informationen finden Sie unter SQLSet Verbinden Optionszuordnung in Anhang G: Treiberrichtlinien für Abwärtskompatibilität.

Eine Ausnahme ist die SQL_ATTR_METADATA_ID und SQL_ATTR_ASYNC_ENABLE Attribute, die sowohl Verbindungsattribute als auch Anweisungsattribute sind und entweder auf Verbindungsebene oder auf Anweisungsebene festgelegt werden können.

Keine der in ODBC 3 eingeführten Anweisungsattribute.x (mit Ausnahme von SQL_ATTR_METADATA_ID) kann auf Verbindungsebene festgelegt werden.

Weitere Informationen finden Sie in der Beschreibung der SQLSetStmtAttr-Funktion .