SQL Server 2005 でビューにフルテキスト インデックスを作成する際に問題があります。ドキュメントを確認しましたが、問題は見つかりませんでした。表示されるエラー メッセージは次のとおりです。非決定論的または不正確な非永続化計算列で定義されておらず、最大サイズは 900 バイトです。フルテキスト キーには別のインデックスを選択してください。」「オフライン」要件を除いて、エラー文字列のすべての要件を確認できましたが、それが何を意味するのかよくわかりません。私はそれがオフラインではないことを確信しています。
以下のターゲットテーブル、ビュー、およびインデックスを作成するスクリプトがあります。以下のサンプルでは、実際にはビューは必要ありません。問題を切り分けようとして簡略化されています。
DROP VIEW [dbo].[ProductSearchView] DROP TABLE [dbo].[Product2] 行く NUMERIC_ROUNDABORT をオフに設定します。 SET ANSI_PADDING、ANSI_WARNINGS、CONCAT_NULL_YIELDS_NULL、ARITHABORT、 QUOTED_IDENTIFIER、ANSI_NULLS オン; 行く CREATE TABLE [dbo].[Product2]( [ID] [bigint] NOT NULL, [説明] [nvarchar](最大) NULL, 制約 [PK_Product2] クラスター化された主キー ( [同上]ASC )WITH (PAD_INDEX = オフ、IGNORE_DUP_KEY = オフ) オン [プライマリ] ) オン [プライマリ] 行く CREATE VIEW [dbo].[ProductSearchView] WITH SCHEMABINDING なので P.Id を Id として選択し、 P.Description AS フィールド FROM [dbo].Product2 AS P 行く -- PK が設定されている場合、このインデックスはやり過ぎかもしれません... 一意のクラスタ化インデックス PK_ProductSearchView を [dbo].[ProductSearchView](Id) に作成します 行く -- これは失敗するコマンドです CREATE FULLTEXT INDEX ON [dbo].[ProductSearchView](Id, Field) キー インデックス ID CHANGE_TRACKING AUTO を使用したフルテキストの場合。 行く