Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » SQL Anywhere サーバ - SQL リファレンス » SQL の使用 » SQL 文 » SQL 文 (P ~ Z)

 

REFRESH TEXT INDEX 文

テキスト・インデックスをリフレッシュします。

構文
REFRESH TEXT INDEX text-index-name ON [ owner.]table-name
[ WITH { 
      ISOLATION LEVEL isolation-level 
      | EXCLUSIVE MODE 
      | SHARE MODE } ]
[ FORCE { BUILD | INCREMENTAL } ]
パラメータ
  • WITH 句   WITH 句は、基本となるベース・テーブルでリフレッシュ中に取得するロックの種類を指定する場合に使用します。取得したロックの種類によって、テキスト・インデックスの移植方法とトランザクションの同時実行性への影響が決まります。WITH 句を指定しなかった場合、デフォルトは、接続に設定されている独立性レベルに関係なく、WITH ISOLATION LEVEL READ UNCOMMITTED になります。

    次の WITH 句オプションを指定できます。

    • ISOLATION LEVEL 独立性レベル   WITH ISOLATION LEVEL は、リフレッシュ操作を実行する場合の独立性レベルを変更する場合に使用します。独立性レベルの詳細については、トランザクションと独立性レベルの使用独立性レベルと一貫性を参照してください。

      接続の元の独立性レベルは、文の実行終了時にリストアされます。

    • EXCLUSIVE MODE   WITH EXCLUSIVE MODE は、独立性レベルを変更しないが、基本となるテーブルにコミットされたデータと矛盾しないようにデータを確実に更新する場合に使用します。WITH EXCLUSIVE MODE を使用すると、基本となるベース・テーブルに排他テーブル・ロックがかけられます。リフレッシュ操作が完了するまで、他のトランザクションによって、基本となるテーブルに対する問い合わせ、更新、その他のアクションは実行できなくなります。テーブルのロックを取得できない場合、更新操作は失敗し、エラーが返されます。テーブル・ロックを参照してください。

    • SHARE MODE   WITH SHARE MODE は、リフレッシュ操作の実行中に、基本となるテーブルを他のトランザクションで読み込めるようにするために使用します。この句を指定すると、リフレッシュ操作が実行される前に基本となるベース・テーブルの共有テーブル・ロックが取得され、リフレッシュ操作が完了するまで保持されます。テーブル・ロックを参照してください。

  • FORCE 句   この句は、リフレッシュ方法を指定する場合に使用します。この句を指定しなかった場合、データベース・サーバは、変更されたテーブルの割合に基づいて、増分更新するか、または完全再構築するかどうかを決定します。テキスト・インデックスの再表示タイプを参照してください。

    • FORCE BUILD 句   この句は、テキスト・インデックスを強制的に完全再構築する場合に使用します。

    • FORCE INCREMENTAL 句   この句は、テキスト・インデックスを強制的に増分更新する場合に使用します。

備考

この文は、MANUAL REFRESH または AUTO REFRESH と定義されているテキスト・インデックスでのみ使用できます。

FORCE 句を使用した場合は、sa_text_index_stats システム・プロシージャの結果を確認して、完全再構築 (FORCE BUILD) または増分更新 (FORCE INCREMENTAL) のどちらが最適かを決定できます。sa_text_index_stats システム・プロシージャを参照してください。

IMMEDIATE REFRESH と定義されているテキスト・インデックスに対して REFRESH TEXT INDEX 文を実行することはできません。

MANUAL REFRESH テキスト・インデックスの場合は、テキスト・インデックスを再表示するかどうかを、sa_text_index_stats システム・プロシージャを使用して判断します。pending_length を doc_length で除算して求められるパーセンテージを、再表示が必要かどうかを判断するうえでの目安にします。必要な再構築の種類を判断する場合も、deleted_length と doc_count を使って同じ処理を行います。

パーミッション

基本となるテーブルの所有者であるか、DBA 権限または REFERENCES パーミッションが必要です。

文またはトランザクションのスナップショットを使用する、WITH HOLD 句を使用して開かれたカーソルがある場合、この文は実行できません。スナップショット・アイソレーションを参照してください。

関連する動作

オートコミット。

参照
標準と互換性
  • SQL/2003   ベンダ拡張。

次の文は、テキスト・インデックス MarketingTextIndex をリフレッシュし、強制的に再構築します。

REFRESH TEXT INDEX MarketingTextIndex ON MarketingInformation
   FORCE BUILD;