混合資料指標
混合資料指標是索引鍵集驅動資料指標和動態資料指標的組合。 當結果集太大而無法合理儲存整個結果集的索引鍵時,就會使用這種指標。 混合資料指標可透過建立小於整個結果集但大於資料列集的索引鍵集來實作。
只要應用程式在索引鍵集中捲動,其行為就會由索引鍵集驅動。 當應用程式在索引鍵集外捲動時,其行為是動態的:資料指標會擷取要求的資料列,並建立新的索引鍵集。 建立新的索引鍵集之後,在該索引鍵集中的行為會恢復由索引鍵集驅動。
舉例來說,假設結果集有 1,000 個資料列,並使用索引鍵集大小為 100、資料列集大小為 10 的混合資料指標。 擷取第一個資料列集時,資料指標會建立一個包含前 100 個資料列索引鍵的索引鍵集。 然後,它會按照要求傳回前 10 個資料列。
現在,假設另一個應用程式刪除了資料列 11 和 101。 如果資料指標嘗試擷取資料列 11,它會遇到一個缺口,因為它有此資料列的索引鍵,但此資料列並不存在;這是索引鍵集驅動的行為。 如果資料指標嘗試擷取資料列 101,資料指標不會偵測到該資料列遺漏,因為它沒有該資料列的索引鍵。 相反地,它會擷取到原本是 102 的資料列。 這就是動態資料指標行為。
當索引鍵集大小等於結果集大小時,混合資料指標相當於索引鍵集驅動資料指標。 當索引鍵集大小等於 1 時,混合資料指標相當於動態資料指標。