[解決済み] テーブルまたはインデックス付きビューのCONTAINSまたはFREETEXT述語は、フルテキストインデックス化されていないため、使用することができません。
質問
SQL server 2008 R2 のデータベースで、以下のエラーが発生しました。
データベースで
CONTAINS
またはFREETEXT
テーブルまたはインデックス付きビュー 'tblArmy' の述語は、フルテキストインデックス化されていないため、'tblArmy' の述語となります。
どのように解決するのですか?
- 全文検索機能がインストールされているかどうか確認してください。
-
全文検索カタログの作成 (必要な場合)
まず、すでにカタログが存在するかどうかを確認します。
select * from sys.fulltext_catalogs
カタログがない場合、カタログを作成する
use [DatabaseName] create fulltext catalog FullTextCatalog as default
を実行すると、上記と同じようにカタログが作成されたことが確認できます。
-
全文検索インデックスを作成します。
create fulltext index on Production.ProductDescription(Description) key index PK_ProductDescription_ProductDescriptionID
インデックスを作成する前に、確認すること。
- 1つのテーブルには1つのフルテキスト検索インデックスしか許可されないため、そのテーブルにすでにフルテキスト検索インデックスがないこと。
- 一意なインデックスがテーブルに存在する。このインデックスは、NULLを許容しない単一キーカラムに基づいていなければなりません。
- フルテキストカタログが存在します。デフォルトのフルテキストカタログが存在しない場合は、フルテキストカタログ名を明示的に指定する必要があります。
ステップ 2 と 3 は、SQL Sever Management Studio で行うことができます。オブジェクト エクスプローラーで、テーブルを右クリックし、そのテーブルで
Full-Text index
メニュー項目を選択し、次に
Define Full-Text Index...
というサブメニュー項目があります。フルテキストインデックス作成ウィザードは、このプロセスを案内してくれます。また、まだ全文検索カタログをお持ちでない場合は、作成してくれます。
より詳しい情報は MSDN
ステップに従った後、全文検索インデックスが作成されるまで数分必要です(これはテーブルとカラムデータのサイズに依存します)。
関連
-
[解決済み] FOREIGN KEY制約で参照されているため、テーブルを切り捨てることができないのですか?
-
[解決済み] SQL Server テーブルにカラムが存在するかどうかを確認する方法は?
-
[解決済み] データベース内の全テーブルのサイズを取得する
-
[解決済み] SQL ServerでJOINを使用してUPDATE文を実行するにはどうすればよいですか?
-
[解決済み] SQLのIN句をパラメータ化する
-
[解決済み] SQL Serverでストアドプロシージャ内のテキストを検索する
-
[解決済み] 最初の行への結合方法
-
[解決済み] Sql Server 'Saving changes is not permitted' エラー ► テーブルの再作成を必要とする変更を保存しないようにする。
-
[解決済み] SQL Serverでレコードを削除した後、IDシードをリセットする。
-
[解決済み] SQL Server 2008を使用してIDENTITY_INSERTをオン/オフする方法は?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] SQLのカラム名があいまいな場合のクエリエラー
-
[解決済み] ...値に挿入する ( SELECT ... FROM ... )
-
[解決済み] テーブルネーミングのジレンマ:単数形と複数形の名前【非公開
-
[解決済み] ATTACHで開いたSQLiteデータベースファイルのテーブルを一覧表示するにはどうすればよいですか?
-
[解決済み] INNER JOIN ON vs WHERE句
-
[解決済み] mysqldumpで特定のテーブルをスキップする
-
[解決済み] Count()で条件を指定することは可能ですか?
-
[解決済み] 複数の列に対してSELECT DISTINCTする方法(またはできる方法)は?
-
[解決済み] Selectステートメントで特定のフィールドの重複を検索する
-
[解決済み] Postgres でサブクエリを使用してテーブルの行を更新する