Freigeben über


Verwenden der Rowsetbindung (ODBC)

Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

So verwenden Sie spaltenbezogene Bindungen

  1. Gehen Sie für jede gebundene Spalte wie folgt vor:

    • Weisen Sie ein Array von R (oder mehr) Spaltenpuffern zum Speichern von Datenwerten zu, wobei R die Anzahl der Zeilen im Rowset ist.

    • Weisen Sie optional ein Array von R (oder mehr) Spaltenpuffern zum Speichern von Datenlängen zu.

    • Rufen Sie SQLBindCol auf, um die Spaltendatenwert- und die Datenlängenarrays an die Spalte des Rowsets zu binden.

  2. Rufen Sie SQLSetStmtAttr auf, um die folgenden Attribute festzulegen:

    • Stellen Sie SQL_ATTR_ROW_ARRAY_SIZE auf die Anzahl der Zeilen im Rowset ein (R).

    • Stellen Sie SQL_ATTR_ROW_BIND_TYPE auf SQL_BIND_BY_COLUMN ein.

    • Legen Sie fest, dass das SQL_ATTR_ROWS FETCHED_PTR-Attribut auf eine SQLUINTEGER-Variable verweist, die die Anzahl der abgerufenen Zeilen enthält.

    • Lassen Sie SQL_ATTR_ROW_STATUS_PTR auf ein Array[R] von SQLUSSMALLINT-Variablen verweisen, die die Zeilenstatusindikatoren enthalten.

  3. Ausführen der Anweisung.

  4. Jeder Aufruf von SQLFetch oder SQLFetchScroll ruft R-Zeilen ab und überträgt die Daten in die gebundenen Spalten.

So verwenden Sie zeilenbezogene Bindungen

  1. Weisen Sie ein Array [R] mit Strukturen zu, wobei R der Anzahl der Zeilen im Rowset entspricht. Die Struktur verfügt über ein Element für jede Spalte, und jedes Element besteht aus zwei Teilen:

    • Der erste Teil ist eine Variable des entsprechenden Datentyps zum Speichern der Spaltendaten.

    • Der zweite Teil ist eine SQLINTEGER-Variable zum Speichern des Spaltenstatusindikators.

  2. Rufen Sie SQLSetStmtAttr auf, um die folgenden Attribute festzulegen:

    • Stellen Sie SQL_ATTR_ROW_ARRAY_SIZE auf die Anzahl der Zeilen im Rowset ein (R).

    • Legen Sie SQL_ATTR_ROW_BIND_TYPE auf die Größe der in Schritt 1 zugeordneten Struktur fest.

    • Legen Sie fest, dass das SQL_ATTR_ROWS_FETCHED_PTR-Attribut auf eine SQLUINTEGER-Variable verweist, die die Anzahl der abgerufenen Zeilen enthält.

    • Lassen Sie SQL_ATTR_PARAMS_STATUS_PTR auf ein Array[R] von SQLUSSMALLINT-Variablen verweisen, die die Zeilenstatusindikatoren enthalten.

  3. Rufen Sie für jede Spalte im Resultset SQLBindCol auf, um mit den Datenwert- und den Datenlängenzeigern der Spalte auf die Variablen im ersten Element des Arrays mit Strukturen zu zeigen, die in Schritt 1 zugewiesen wurden.

  4. Ausführen der Anweisung.

  5. Jeder Aufruf von SQLFetch oder SQLFetchScroll ruft R-Zeilen ab und überträgt die Daten in die gebundenen Spalten.

Weitere Informationen

Themen zur Vorgehensweise zur Verwendung von Cursorn (ODBC)
Implementieren von Cursorn
Verwenden von Cursorn (ODBC)