共用方式為


CacheSize 属性 (ADO)

指出記憶體中本機快取 Recordset 物件的記錄數目。

設定和傳回值

設定或傳回必須大於 0 的 Long 值。 預設值為 1。

言論

使用 CacheSize 屬性來控制一次從提供者擷取到本機記憶體的記錄數目。 例如,如果 CacheSize 為 10,在先開啟 Recordset 對象之後,提供者會將前 10 筆記錄擷取到本機記憶體中。 當您在 Recordset 物件中移動時,提供者會從本機記憶體緩衝區傳回數據。 一旦您移過快取中的最後一筆記錄,提供者就會從數據源擷取接下來的 10 筆記錄到快取中。

注意

CacheSize 是以 Recordset 物件的 Properties 集合 提供者特定屬性為基礎。 您無法將 cacheSize 設定為大於 最大開啟數據列的值。 若要修改提供者可以開啟的資料列數目,請設定 最大開啟的資料列數

CacheSize 的值可以在 Recordset 物件的存留期間進行調整,但變更此值只會影響從數據源後續擷取之後快取中的記錄數目。 單獨變更屬性值並不會變更快取的目前內容。

如果擷取的記錄少於 CacheSize 指定,提供者會傳回剩餘的記錄,而且不會發生錯誤。

不允許 CacheSize 設定為零,並傳回錯誤。

從快取擷取的記錄不會反映其他使用者對源數據所做的並行變更。 若要強制更新所有快取的數據,請使用 Resync 方法。

如果 CacheSize 設定為大於一的值,則巡覽方法(MoveMoveFirst、MoveLast、MoveNext 和 MovePrevious)可能會導致流覽至已刪除的記錄,如果在擷取記錄之後發生刪除。 初始擷取之後,在您嘗試從已刪除的數據列存取數據值之前,後續刪除將不會反映在數據快取中。 不過,將 cacheSize 設定為 ,可排除此問題,因為無法擷取已刪除的數據列。

適用於

Recordset 物件 (ADO)

另請參閱

CacheSize 屬性範例 (VB)
CacheSize 屬性範例 (VC++)
CacheSize 屬性範例 (JScript)