Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
テキストインデックスを作成します。
CREATE TEXT INDEX [ IF NOT EXISTS ] text-index-name ON [ owner.]table-name( column-name, ... ) [ IN dbspace-name ] [ CONFIGURATION [ owner.]text-configuration-name ] [ { IMMEDIATE REFRESH | MANUAL REFRESH | AUTO REFRESH [ EVERY integer { MINUTES | HOURS } ] ] }
IF NOT EXISTS 句 IF NOT EXISTS 句が指定され、指定されたテキストインデックスがすでに存在する場合は、変更は行われず、エラーも返されません。
ON 句 この句は、テキストインデックスを構築するテーブルとカラムを指定するときに使用します。
IN 句 この句は、テキストインデックスが格納される DB 領域を指定するときに使用します。この句が指定されていない場合は、テキストインデックスが参照するテーブルと同じ DB 領域でテキストインデックスが作成されます。
CONFIGURATION 句 この句は、テキストインデックスの作成時に使用するテキスト設定オブジェクトを指定するときに使用します。この句が指定されておらず、インデックスのカラムのいずれかが NCHAR の場合は、default_nchar テキスト設定オブジェクトが使用されます。それ以外の場合は、default_char テキスト設定オブジェクトが使用されます。
REFRESH 句 この句は、テキストインデックスの再表示タイプを指定するときに使用します。REFRESH 句を指定しない場合、デフォルトとして IMMEDIATE REFRESH が使用されます。次に、指定できる再表示タイプを示します。
IMMEDIATE REFRESH IMMEDIATE REFRESH は、基本となるテーブルの変更によってテキストインデックスのデータが影響を受けるたびにテキストインデックスを再表示する場合に指定します。
AUTO REFRESH この句は、内部サーバーイベントを使用して自動的にマテリアライズドビューをリフレッシュするときに使用します。EVERY 句は、再表示間隔を分または時間単位で指定するときに使用します。間隔情報を指定しないで AUTO REFRESH を指定した場合、データベースサーバーは 60 分ごとにテキストインデックスを再表示します。sa_text_index_stats システムプロシージャーから返された pending_size value が、最後のリフレッシュ時にテキストインデックスサイズの 20 % を超えるか、deleted_length がテキストインデックスサイズの 50 % を超えると、AUTO REFRESH 句で指定された時間の前にテキストインデックスがリフレッシュされる場合があります。1 分ごとに内部イベントが実行され、AUTO REFRESH の全テキストインデックスに対してこの条件がチェックされます。
MANUAL REFRESH この句は、テキストインデックスが手動で再表示されるように指定するときに使用します。
再表示タイプの詳細については、テキストインデックスの再表示タイプを参照してください。
テキストインデックスは、ビュー、マテリアライズドビュー、またはテンポラリテーブルには作成できません。
IMMEDIATE REFRESH のテキストインデックスは、作成時に移植され、この初期再表示中に、テーブルに排他ロックがかけられます。IMMEDIATE REFRESH のテキストインデックスは、スナップショットアイソレーションを使用するクエリを完全にサポートします。
MANUAL と AUTO REFRESH のテキストインデックスは、作成後に初期化 (再表示) されます。
AUTO REFRESH のテキストインデックスの再表示では、独立性レベル 0 を使用してテーブルがスキャンされます。
テキストインデックスの作成後に、その定義を IMMEDIATE REFRESH に変更したり、IMMEDIATE REFRESH から変更したりできません。いずれかの変更が必要な場合は、テキストインデックスを削除して再度作成する必要があります。
REFRESH TEXT INDEX 文を使用して、AUTO REFRESH テキストインデックスを手動で再表示することを選択できます。
テキストインデックスとそれらが参照するテキスト設定オブジェクトを表示する方法については、データベース内のテキストインデックスに関する情報の表示 (Sybase Central の場合)を参照してください。
基本となるテーブルの所有者であるか、DBA 権限または REFERENCES パーミッションが必要です。
文またはトランザクションのスナップショットを使用する、WITH HOLD 句を使用して開かれたカーソルがある場合、この文は実行できません。
オートコミット。
SQL/2008 ベンダー拡張。
次の例は、サンプルデータベースの MarketingInformation テーブルの Description カラムについてテキストインデックス myTxtIdx を作成します。MarketingTextConfig テキスト設定オブジェクトが使用され、再表示間隔は 24 時間ごとに設定されます。
CREATE TEXT INDEX myTxtIdx ON MarketingInformation ( Description ) CONFIGURATION default_char AUTO REFRESH EVERY 24 HOURS;