行のスクロールとフェッチ - ODBC での行のブックマーク
適用対象: SQL Server Azure SQL データベース Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
ブックマークは、データ行の識別に使われる値です。 ブックマーク値の意味を解釈できるのは、ドライバーまたはデータ ソースのみです。 たとえば、ブックマークは、行番号のような単純な値の場合も、ディスク アドレスのような複雑な値の場合もあります。 ODBC では、アプリケーションが特定の行のブックマークを要求し、これを保存し、カーソルに戻して行に返します。
SQLFetchScroll を使用して行をフェッチする場合、アプリケーションはブックマークを使用して開始行を選択できます。 これは、現在のカーソルの位置に依存しないので、絶対アドレスの形式になります。 ブックマークされた行にスクロールするには、アプリケーションは SQL_FETCH_BOOKMARK の FetchOrientation を指定して SQLFetchScroll を呼び出します。 この操作では、SQL_ATTR_FETCH_BOOKMARK_PTR オプション属性によって示されるブックマークを使用します。 結果として、そのブックマークによって識別される行で始まる行セットが返されます。 アプリケーションは、SQLFetchScroll の呼び出しの FetchOffset 引数で、この操作のオフセットを指定できます。 オフセットを指定すると、結果の行セットの最初の行は、ブックマークで識別される行番号に FetchOffset 引数の数を加算した結果によって決まります。 SQL Server Native Client ODBC ドライバーでは、静的カーソルとキーセット カーソルのブックマークのみがサポートされます。 ブックマークが設定されている場合に動的カーソルが要求されると、代わりにキーセット カーソルが開かれます。
ブックマークは、 SQLBulkOperations 関数と共に使用して、ブックマークから始まる一連の行に対して操作を実行することもできます。