共用方式為


JET_SETCOLUMN 結構

適用于: Windows |Windows Server

JET_SETCOLUMN 結構

JET_SETCOLUMN結構包含JetSetColumns的輸入和輸出參數。 結構中的欄位描述要設定的資料行值、如何設定,以及取得資料行集資料的位置。

    typedef struct {
      JET_COLUMNID columnid;
      const void* pvData;
      unsigned long cbData;
      JET_GRBIT grbit;
      unsigned long ibLongValue;
      unsigned long itagSequence;
      JET_ERR err;
    } JET_SETCOLUMN;

成員

columnid

要設定之資料行的資料行識別碼。

pvData

要設定為數據行之資料的指標。

cbData

配置的大小,以位元組為單位,從 pvData 開始,以位元組為單位。

grbit

一組位,其中包含要用於此呼叫的選項,其中包含下列零個或多個選項。

意義

JET_bitSetAppendLV

將資料附加至 類型為 JET_coltypLongTextJET_coltypLongBinary 的資料行。 藉由判斷現有 long 值的大小,並在psetinfo中指定ibLongValue,即可達到相同的行為。 不過,使用這個 grbit會比較簡單,因為瞭解現有資料行值的大小並非必要。

JET_bitSetOverwriteLV

以新的資料取代現有的 long 值。 使用此選項時,就如同在設定新資料之前,現有的 long 值已設定為 0 (零) 長度。

JET_bitSetSizeLV

將輸入緩衝區解譯為整數位節數,以設定為指定 columnid 所描述之 long 值的長度,如果提供,則為 psetinfo-itagSequence > 中的序號。 如果指定的大小大於現有的資料行值,資料行將會以 0 來擴充。 如果大小小於現有的資料行值,則會截斷該值。

JET_bitSetZeroLength

將值設定為零長度。 一般而言,資料行值會藉由傳遞 0 的 cbMax 來設定為 Null。 不過,對於某些類型,例如 JET_coltypText,資料行值可以是 0 長度,而不是 Null,而此選項可用來區分 Null 和 0 長度。

JET_bitSetSeparateLV

強制JET_coltypLongText或JET_coltypLongBinary類型的長值、資料行與記錄資料的其餘部分分開儲存。 當 long 值的大小防止儲存剩餘記錄資料時,通常會發生這種情況。 不過,此選項可用來強制個別儲存長值。 請注意,大小或較小的長值四個位元組不能被強制分隔。 在這種情況下,會忽略 選項。

JET_bitSetUniqueMultiValues

在多重值資料行中強制執行相異值。 此選項會將來源資料行資料與其他現有的資料行值進行比較,如果找到重複的資料行,則會傳回錯誤。 如果指定此選項,則也無法提供JET_bitSetAppendLv、JET_bitSetOverwriteLV和JET_bitSetSizeLV。

JET_bitSetUniqueNormalizedMultiValues

在多重值資料行中強制執行相異值。 此選項會將資料行資料的索引鍵正規化轉換與其他同樣轉換的現有資料行值進行比較,並在找到重複專案時傳回錯誤。 如果指定此選項,則也無法提供JET_bitSetAppendLv、JET_bitSetOverwriteLV和JET_bitSetSizeLV。

JET_bitSetRevertToDefaultValue

導致資料行在後續擷取資料行作業上傳回預設資料行值。 移除所有現有的資料行值。 此選項僅適用于標記、疏鬆或多重值資料行。

JET_bitSetIntrinsicLV

盡可能保留長值、類型 為 JET_coltypLongText 或 JET_coltypeLongBinary的資料行,並儲存其餘記錄資料。 一般而言,當長資料行的長度超過 1024 個位元組,或導致記錄長度超過其頁面大小相關大小限制時,會分開儲存。 不過,如果設定此選項,則設定資料行作業將會失敗,並出現錯誤JET_errColumnTooBig,而不是將此資料行值與其余記錄資料分開儲存。

ibLongValue

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

itagSequence

描述多重值資料行中的值序號。 itagSequence為 0 表示資料行值集應該新增為多重值資料行的新實例。

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
JetSetColumns