擷取的資料列數目和狀態

如果已設定 SQL_ATTR_ROWS_FETCHED_PTR 陳述式屬性,該屬性會指定緩衝區,而此緩衝區會傳回 SQLFetchSQLFetchScroll 的呼叫所擷取的資料列數目,以及錯誤資料列。 (這個數字是所有不具 SQL_ROW_NO_ROWS 狀態的資料列計數。) 在呼叫 SQLBulkOperationsSQLSetPos 之後,緩衝區會包含該函式所執行的大量作業影響到的資料列數目。 如果已設定SQL_ATTR_ROW_STATUS_PTR陳述式屬性,SQLFetchSQLFetchScroll 會傳回資料列狀態陣列,這會提供每個傳回的資料列所呈現的狀態。 這些欄位所指向的兩個緩衝區都是由應用程式配置,並由驅動程式填入。 應用程式必須確定這些指標在資料指標關閉之前保持有效。

資料列狀態陣列中的項目會指出每個資料列是否已成功擷取、更新、新增或刪除,以及擷取資料列時是否發生錯誤。 如果 SQLFetchSQLFetchScroll 在擷取多列資料列集的一個資料列時發生錯誤,或者如果具有 SQL_FETCH_BY_BOOKMARK Operation 引數的 SQLBulkOperations 在執行大量擷取時遇到錯誤,則會將資料列狀態陣列中的對應值設定為 SQL_ROW_ERROR,繼續擷取資料列,並傳回 SQL_SUCCESS_WITH_INFO。 如需錯誤處理和資料列狀態陣列的詳細資訊,請參閱 SQLFetchSQLFetchScroll 函式描述。