次の方法で共有


JET_TUPLELIMITS構造体

適用対象: Windows |Windows Server

JET_TUPLELIMITS構造体

JET_TUPLELIMITS構造体を使用すると、JetSetSystemParameter を使用して、インスタンス単位ではなくインデックスごとにタプル インデックス特性をカスタマイズできます。

Windows Server 2003:JET_TUPLELIMITS構造は、Windows Server 2003 で導入されています。

    typedef struct tagJET_TUPLELIMITS {
      unsigned long chLengthMin;
      unsigned long chLengthMax;
      unsigned long chToIndexMax;
      unsigned long cchIncrement;
      unsigned long ichStart;
    } JET_TUPLELIMITS;

メンバー

chLengthMin

タプルの最小長。 既定値は、3 です。

chLengthMax

タプルの最大長。 既定値は 10 です。

chToIndexMax

インデックスを作成する文字列の最大長。 たとえば、列の長さが 100 文字で、 chToIndexMax が 60 に設定されている場合、列の最初の 60 文字のみがインデックス付けされます。 既定値は 32767 です。

cchIncrement

これにより、インデックスごとにストライドを構成できます。

Windows Vista:cchIncrement メンバーは、Windows Vista で導入されています。 Windows Vista より前では、ウィンドウをシフトする量 ("ストライド") は常に 1 でした。これは、「解説」セクションの例に示すようにです。

ichStart

値からタプルの取得を開始する値へのオフセット。

Windows Vista:ichStart メンバーは Windows Vista で導入されています。

解説

タプル インデックスは文字列をウォークし、 chLengthMax のすべての可能な部分文字列にインデックスを付けます。 文字列の末尾 (または chToIndexMax 位置のいずれか早い方) に、少なくとも chLengthMin の部分文字列のインデックスが作成されます。

タプル インデックスは、先頭と末尾の両方のワイルドカードを使用して文字列を検索するために使用できます。

テキスト フィールドが "RAIN IN SPAIN!" の行を想定すると、パラメーター chLengthMin=2 および chLengthMax=3 を使用してタプル インデックスが作成されると、インデックスに次のエントリが作成されます。

"RAI"
"AIN"
"IN"
"N I"
"IN"
"IN"
"N S"
"SP"
"SPA"
"PAI"
"AIN"
"IN!"
"N!"

"IN" は 2 回発生し、最後のエントリ ("N!") が発生します。が 3 (chLengthMax) より短い。 また、分割アルゴリズムはスペースや単語を認識せず、すべての文字を同じように扱うことに注意してください。

Windows XP: Windows XP ではタプル インデックスがサポートされていますが、 JET_TUPLELIMITSはありません。 データベース エンジンでは、既定値 (chLengthMin=3、 chLengthMax=10、 chToIndexMax=32767) が使用されます。 これらの値は引き続き変更できますが、JET_paramIndexTuplesLengthMin、JET_paramIndexTuplesLengthMaxおよびJET_paramIndexTuplesToIndexMaxJetSetSystemParameter を使用してインスタンスごとに設定されます。

必要条件

要件

Client

Windows Vista が必要です。

[サーバー]

Windows Server 2008、Windows Server 2003 が必要です。

Header

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

参照

JET_COLTYP
JET_INDEXCREATE
JET_TUPLELIMITS
JetSetSystemParameter