次の方法で共有


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

この呼び出しに使用するオプションを含むビットのグループ。これには、次の 0 個以上が含まれます。

説明

JET_bitSetAppendLV

JET_coltypLongText型または JET_coltypLongBinary 型の列にデータ 追加します。 同じ動作を実現するには、既存の long 値のサイズを決定し、psetinfoibLongValue を指定します。 ただし、既存の列値のサイズを把握する必要がないため、この grbit を使用する方が簡単です。

JET_bitSetOverwriteLV

既存の long 値を新しいデータに置き換えます。 このオプションを使用すると、新しいデータを設定する前に、既存の long 値が 0 (ゼロ) の長さに設定されているかのように表示されます。

JET_bitSetSizeLV

入力バッファーを、指定された columnid で記述された長い値の長さとして設定する整数バイト数として解釈し、指定されている場合は psetinfo-itagSequence> のシーケンス番号を解釈します。 指定されたサイズが既存の列の値よりも大きい場合、列は 0 で拡張されます。 サイズが既存の列の値より小さい場合、値は切り捨てられます。

JET_bitSetZeroLength

値を長さ 0 に設定します。 通常、cbMax の 0 を渡すことで、列の値は NULL に設定されます。 ただし、 JET_coltypTextなどの一部の型では、列の値は NULL ではなく 0 の長さにすることができ、このオプションは NULL と 0 の長さを区別するために使用されます。

JET_bitSetSeparateLV

長い値 ( JET_coltypLongText 型または JET_coltypLongBinaryの列) を、残りのレコード データとは別に格納します。 これは通常、長い値のサイズによって残りのレコード データと共に格納されない場合に発生します。 ただし、このオプションを使用して、長い値を個別に格納することができます。 サイズが 4 バイト以下の長い値は、強制的に分離できないことに注意してください。 このような場合、 オプションは無視されます。

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_coltypLongBinary型の列から取得される最初のバイトへのオフセット。JET_coltypLongText

itagSequence

複数値列の値のシーケンス番号について説明します。 itagSequence が 0 の場合、列の値セットを複数値列の新しいインスタンスとして追加する必要があることを示します。

err

列の設定操作から返されるエラー コードと警告。

要件

要件

Client

Windows Vista、Windows XP、または Windows 2000 Professional が必要です。

[サーバー]

Windows Server 2008、Windows Server 2003、または Windows 2000 Server が必要です。

Header

Esent.h で宣言されています。

参照

JET_COLTYP
JET_COLUMNID
JET_ERR
JET_GRBIT
JetSetColumns