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 から始まる割り当てのサイズ (バイト単位)。 列の取得操作では、cbData よりも多くのデータが pvData に格納されません。
cbActual
列の取得操作によって取得されるデータのサイズ (バイト単位)。
grbit
列取得のオプションを含むビットのグループ。次の値の 0 個以上が含まれます。
値 |
説明 |
---|---|
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_coltypLongBinary型またはJET_coltypLongText型の列から取得される最初のバイトへのオフセット。
itagSequence
複数値列に含まれる値のシーケンス番号。 JET_RETRIEVECOLUMNの itagSequence には 0 を指定できます。 itagSequence が 0 の場合は、列データではなく、複数値の列のインスタンス数が返されます。 itagSequence 値 0 は、JetRetrieveColumn の呼び出しでは使用できません。
columnidNextTagged
タグ付けされたすべての列が取得される場合の、タグ付けされた列、複数値、またはスパース列の columnid。JetRetrieveColumn に columnid として 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
JET_RETRIEVECOLUMN
JetRetrieveColumn
JetRetrieveColumns