SQL Server 2008 フルテキスト検索の準備SQL

AdventureWorks でフルテキスト検索を有効にするまでのSQL文サンプルを作成してみた。内容は以下の順番

  • ファイルグループの作成
  • ファイルグループに対してファイルの割り当て
  • フルテキストカタログの作成
  • フルテキストインデックスの作成
USE [master]
GO

-- ファイルグループの作成
ALTER DATABASE [AdventureWorks] ADD FILEGROUP FullTextFG
GO

-- AdventureWorks.mdf のあるフォルダを取得する
DECLARE @data_path nvarchar(256);
SET @data_path = (SELECT SUBSTRING(physical_name, 1, CHARINDEX(N'AdventureWorks.mdf', LOWER(physical_name)) - 1)
                  FROM [AdventureWorks].sys.database_files
                  WHERE file_id = 1);
SET @data_path = @data_path + 'AdventureWorksFulltextFG.ndf'

-- ファイルグループに対してファイルの追加
EXECUTE('
ALTER DATABASE [AdventureWorks] ADD FILE
(
    NAME = AdventureWorksFulltextFG,
    FILENAME= '''+ @data_path +''' ,
    SIZE = 1024MB,
    FILEGROWTH = 5MB
)
TO FILEGROUP FullTextFG
')
GO

USE [AdventureWorks]
GO
CREATE FULLTEXT CATALOG FTCATALOG ON FILEGROUP FullTextFG AS DEFAULT
GO

-- DROP FULLTEXT INDEX ON [Sales].[Product]
-- GO
CREATE FULLTEXT INDEX ON [Sales].[Product] KEY INDEX [PK_Product_ProductID] ON ([FTCATALOG]) WITH (CHANGE_TRACKING AUTO)
ALTER FULLTEXT INDEX ON [Sales].[Product] ADD ([Name] LANGUAGE [Neutral])
ALTER FULLTEXT INDEX ON [Sales].[Product] ADD ([ProductNumber] LANGUAGE [Neutral])
ALTER FULLTEXT INDEX ON [Sales].[Product] ADD ([Color] LANGUAGE [Neutral])
ALTER FULLTEXT INDEX ON [Sales].[Product] ENABLE
GO

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。