4D v14.3

SET INDEX

ホーム

 
4D v14.3
SET INDEX

SET INDEX 


 

SET INDEX ( aField ; index {; mode} {; *} )  
aField  フィールド in インデックスを作成または削除するフィールド
index  ブール, 整数 in True=作成、False=削除、または インデックスを作成: -1=キーワード、 0=デフォルト、1=標準B-Tree、3=クラスタB-Tree
mode  倍長整数 in 廃止 (引数は無視)
in *を渡すと非同期にインデックスを作成

説明   

互換性に関する注意: このコマンドは互換性の目的で保持されています。プログラムでインデックスを管理する場合はCREATE INDEXDELETE INDEXコマンドの利用を推奨します。

SET INDEXには2つのシンタックスがあります。

  • 引数indexにブールを渡す場合、コマンドはaFieldに渡したフィールド用のインデックスを作成したり、削除したりします。
  • 引数indexに整数を渡す場合、コマンドは指定されたタイプのインデックスを作成します。

index = ブール
フィールドをインデックスするには、indexにTrueを渡します。コマンドはデフォルトタイプのインデックスを作成します。インデックスが既に存在する場合、呼び出しは機能しません。
indexにFalesを渡すと、コマンドはフィールドに関連づけられたすべての標準インデックス (非複合、非キーワード) を削除します。インデックスが存在しない場合、呼び出しは機能しません。

index = 整数
コマンドはaFieldに対して指定されたインデックスを作成します。Index Typeテーマにある以下の定数のいずれか1つを渡します。

定数 コメント
Cluster BTree Index 倍長整数 3 クラスタを使用するB-Treeタイプのインデックス。このインデックスタイプは、インデックスが少数のキーを持つ場合、つまり同じ値がデータ内で頻繁に生じる場合に最も適しています。
Default Index Type 倍長整数 0 4Dはフィールドに応じて最適なインデックスのタイプを設定します (キーワードインデックスを除く) 。
Keywords Index 倍長整数 -1 キーワードタイプのインデックス。キーワードを複合タイプにすることはできません。fieldsArray配列にはひとつだけフィールドを渡します。
Standard BTree Index 倍長整数 1 標準 B-Treeタイプのインデックス。この多目的用のインデックスタイプは4Dの以前のバージョンで使用されています。

注: テキスト型のフィールドに設定されたBツリーインデックスは最大で最初の1024文字をインデックス化します。この場合、1024文字以上を含む文字列の検索結果は正しくなりません。

SET INDEXコマンドはロックされたレコードのインデックス付けは行いません。レコードがロック解除されるまで待機します。

バージョン11以降、引数modeはもうその役割を果たさなくなっています。渡された場合は無視されます。

オプション引数*を用いて、非同期に(同時に)インデックスが付けられるようになりました。非同期なインデックス付けにより、インデックス付けが終了したかどうかに関係なく、呼び出し側のメソッドの実行をそのまま続行できます。ただし、インデックスが必要なコマンドを実行すると失敗します。

:

  • このコマンドで作成されたインデックスには名前がありません。名前に基づくシンタックスを用いているDELETE INDEXコマンドでそれらのインデックスを削除することはできません。
  • 複合インデックスを作成したり削除するために、このコマンドを使用することはできません。
  • このコマンドを使用して、CREATE INDEXで作成されたキーワードインデックスを削除することはできません。

以下の例は、[Customers]IDフィールドにインデックスを付けます。

 UNLOAD RECORD([Customers])
 SET INDEX([Customers]ID;True)

[Customers]Name フィールドを非同期モードでインデックスします:

 SET INDEX([Customers]Name;True;*)

キーワードインデックスを作成します:

 SET INDEX([Books]Summary;Keywords Index)

 
プロパティ 

プロダクト: 4D
テーマ: ストラクチャアクセス
番号: 344

 
履歴 

変更: 4D v11 SQL

 
参照 

CREATE INDEX
DELETE INDEX
GET FIELD PROPERTIES
ORDER BY
QUERY

 
ARTICLE USAGE

ランゲージリファレンス ( 4D v11 SQL Release 6)
ランゲージリファレンス ( 4D v14 R3)
ランゲージリファレンス ( 4D v14 R2)
ランゲージリファレンス ( 4D v13.5)
ランゲージリファレンス ( 4D v14.3)
ランゲージリファレンス ( 4D v14 R4)

Parent of : SET INDEX ( 4D v12.4)