Share via


フェッチされた行の数と状態

SQL_ATTR_ROWS_FETCHED_PTR ステートメント属性が設定されている場合は、SQLFetch または SQLFetchScroll の呼び出しによってフェッチされた行数とエラー行を返すバッファーを指定します。 (この数値は、状態が SQL_ROW_NO_ROWS されていないすべての行の数です)。SQLBulkOperations または SQLSetPos の呼び出し後、バッファーには、関数によって実行された一括操作の影響を受けた行の数が格納されます。 SQL_ATTR_ROW_STATUS_PTR ステートメント属性が設定されている場合、SQLFetch または SQLFetchScroll は、返される各行の状態を提供する行の状態配列を返します。 これらのフィールドによって指されるバッファーの両方はアプリケーションによって割り当てられ、ドライバーによって設定されます。 アプリケーションでは、カーソルが閉じられるまでこれらのポインターが有効なままであることを確認する必要があります。

行の状態配列のエントリは、各行が正常にフェッチされたかどうか、最後にフェッチされてから更新、追加、削除されたかどうか、および行のフェッチ中にエラーが発生したかどうかを示します。 複数行セットの 1 行の取得中に SQLFetch または SQLFetchScroll でエラーが発生した場合、または一括フェッチの実行中に、SQL_FETCH_BY_BOOKMARKの Operation 引数を持つ SQLBulkOperations でエラーが発生した場合は、行の状態配列の対応する値が SQL_ROW_ERROR に設定され、行のフェッチが続行され、SQL_SUCCESS_WITH_INFO が返されます。 エラー処理と行の状態配列の詳細については、SQLFetch および SQLFetchScroll 関数の説明を参照してください。