共用方式為


JET_RETRIEVECOLUMN 結構

適用于: Windows |Windows Server

JET_RETRIEVECOLUMN 結構

JET_RETRIEVECOLUMN結構包含JetRetrieveColumns的輸入和輸出參數。 結構中的欄位描述要擷取的資料行值、如何擷取,以及儲存結果的位置。

    typedef struct {
      JET_COLUMNID columnid;
      void* pvData;
      unsigned long cbData;
      unsigned long cbActual;
      JET_GRBIT grbit;
      unsigned long ibLongValue;
      unsigned long itagSequence;
      JET_COLUMNID columnidNextTagged;
      JET_ERR err;
    } JET_RETRIEVECOLUMN;

成員

columnid

要擷取之資料行的資料行識別碼。

pvData

開始儲存從資料行值擷取之資料的指標。

cbData

pvData開始的配置大小,以位元組為單位。 擷取資料行作業不會在 pvData 上儲存比 cbData更多的資料。

cbActual

擷取資料行作業所擷取的資料大小,以位元組為單位。

grbit

一組位,其中包含資料行擷取的選項,其中包含下列零個或多個值。

意義

JET_bitRetrieveCopy

擷取修改的值,而不是原始值。 如果尚未修改值,則會擷取原始值。 如此一來,插入或更新記錄時,就可以擷取尚未插入或更新的值。

JET_bitRetrieveFromIndex

盡可能從索引擷取資料行值,而不存取記錄。 如此一來,從索引項目目本身取得所需的資料時,可以避免不必要的記錄載入。 如果無法從索引擷取原始資料行值,因為無法復原的轉換或資料截斷,將會存取記錄,並依正常方式擷取資料。 這是效能選項,只有在可能從索引擷取資料行值時,才應該指定。 如果目前的索引是叢集索引,則不應該指定這個選項,因為叢集或主要索引的索引項目目本身是記錄本身。 如果同時設定JET_bitRetrieveFromPrimaryBookmark,則無法設定此位。

JET_bitRetrieveFromPrimaryBookmark

從索引書簽擷取資料行值,而且當資料行同時出現在主要索引和目前索引時,可能會與索引值不同。 如果目前的索引是叢集或主要索引,則不應該指定這個選項。 如果同時設定JET_bitRetrieveFromIndex,就無法設定此位。

JET_bitRetrieveTag

擷取 pretinfo-itagSequence > 中多重值資料行值的序號。 itagSequence 欄位通常用於從記錄擷取多重值資料行值的輸入。 不過,從索引擷取值時,也可以讓索引項目目與特定序號產生關聯,並擷取此序號。 擷取序號可能是成本高昂的作業,而且只在必要時才應該完成。

JET_ bitRetrieveNull

擷取多重值資料行 Null 值。 如果未指定此選項,系統會自動略過多重值資料行 Null 值。

JET_bitRetrieveIgnoreDefault

當要求的序號為 1 且記錄中沒有資料行的設定值時,就會傳回 Null 值。 此選項只會影響多重值資料行。

JET_bitRetrieveLongId

此旗標僅供內部使用,不適用於您的應用程式。

JET_bitRetrieveLongValueRefCount

此旗標僅供內部使用,不適用於您的應用程式。

ibLongValue

要從類型 為 JET_coltypLongBinaryJET_coltypLongText之資料行擷取之第一個位元組的位移。

itagSequence

包含在多重值資料行中的值序號。 JET_RETRIEVECOLUMN中的 itagSequence可以是 0 。 如果 itagSequence 為 0,則會傳回多重值資料行的實例數目,而不是傳回任何資料行資料。 itagSequence值 0 不能用於JetRetrieveColumn的呼叫中。

columnidNextTagged

擷取所有標記的資料行做為columnid 至 JetRetrieveColumn,以擷取所有標記的資料行時,標記、多重值或疏鬆資料行的columnid

err

從擷取資料行傳回的錯誤碼和警告。

規格需求

需求

用戶端

需要 Windows Vista、Windows XP 或 Windows 2000 Professional。

Server

需要 Windows Server 2008、Windows Server 2003 或 Windows 2000 Server。

標頭

在 Esent.h 中宣告。

另請參閱

JET_COLTYP
JET_COLUMNID
JET_ERR
JET_GRBIT
JET_RETRIEVECOLUMN
JetRetrieveColumn
JetRetrieveColumns