以 API 使用區塊資料指標

API 伺服器資料指標並不限於一次擷取一個資料列,它們可以每次擷取多個資料列。與用戶端/伺服器資料庫 (如 MicrosoftSQL Server) 搭配使用時,一次擷取數個資料列會更有效率。在一次擷取中所傳回的資料列數,稱為資料列集大小。資料列集大小大於一的資料指標,稱為區塊資料指標。在支援的 API 中,您可以透過下列方式使用區塊資料指標:

  • ODBC

    • 將陳述式屬性 SQL_ATTR_ROWSET_SIZE 設定為資料列集的大小。

    • 使用資料行取向或資料列取向的繫結,將資料行繫結至變數陣列,以保存傳回資料列的資料。每個陣列中的元素數目都會等於資料列集大小。

    • 每次呼叫 SQLFetchScroll 時會依照 SQL_ATTR_ROWSET_SIZE 擷取資料列集數目。

  • OLE DB

    • 配置資料列控制代碼的陣列,並將每個控制代碼代表的資料行繫結至變數陣列,以保存資料行的資料。

    • 以 cRows 參數呼叫 IRowset::GetNextRows 來設定資料列控制代碼陣列中控制代碼的數量,以及 prghRows 參數中資料列控制代碼陣列的位址。

  • ADO

    • 定義 variant 以保留您要擷取之資料列數目的資料。

    • (選擇性) 使用資料錄集方法 MoveMoveFirstMoveLastMoveNextMovePrevious,在資料指標中定位適當的位置。

    • 呼叫資料錄集方法 GetRows 時,使用 array 參數可保留 variant 位址以保留資料列,而使用 Crows 參數可保留要傳回之資料列數。您可以選擇性地使用 Start 參數指出資料錄集中的擷取位置。