ソフトンハウス・トップへ
お疲れぷろぐらま
ソフトンハウス製作日記
ソフトンハウスや日々のことを書いています。
ソフトンハウス
サーバー構築・システム開発
コンサル業務を受託しています。
ご興味のある方はお疲れぷろぐらま
までお気軽にご相談ください。
Calendar
<<12月>>
1234567
891011121314
15161718192021
22232425262728
293031
Blog Parts
にほんブログ村 IT技術ブログ Webサイト構築へ
blogram投票ボタン
Messages
AI回答・高市氏が総理に...
ベルト脂肪の解き方ガイド...
ベルト脂肪の解き方ガイド...
ベルト脂肪の解き方ガイド...
ベルト脂肪の解き方ガイド...
ベルト脂肪の解き方ガイド...
ベルト脂肪の解き方ガイド...
ベルト脂肪の解き方ガイド...
ベルト脂肪の解き方ガイド...
ベルト脂肪の解き方ガイド...
au接続障害について...
6月19日〜21日まで停...
ウクライナ侵攻の理由とは...
ジェイムズ・ウェッブ宇宙...
弦(String)(ひも...
双子の恒星
ビラミットとクレオパトラ...
自衛隊機のスクランブル...
仮想世界をつくりたい...
仮想世界
→リスト表示する
Latest Blog
tonton
2024年12月の動画関...
tonton
巨大アート
tonton
音楽の力とあり方...
tonton
近年の技術革新アイデアグ...
tonton
UFO関係ミステリー...
kazu
水泳
asobow
プレゼント~ ひとり遊び...
tonton
2024年11月の動画関...
tonton
代替品について...
tonton
アメリカ(人)の倫理観...
tonton
無駄な作業など...
[最新順表示]  1 件
 [リストを表示] 1頁5件 1/1(1件)
2017/04/03 16:40:06 プライベート♪
なし
SQL Serverフルテキストインデックスを作成する

SQL Server にワードやPDF、パワーポイントデータを格納し、フルテキストインデックスを作成し全文検索したいという要望があるときに読んでください。文章の例は SQL Server 2008 です。

■テーブルを作成する。

WORDやEXCELを格納するフィールドを作る。以下の属性にする。
varbinary(MAX)

データ型を格納するフィールドを作る。以下の属性にする。
varchar(20)
格納するデータはファイルの拡張子なので、サイズが20もなくて十分であればもっと少なくする。

フィールドに格納する書類等を文字として抽出するには「IFilter」を用いることになるので、書類等の分類として拡張子を入れ込むフィールドも必要になる。その列を「データ型列」と言う。

実際にデータを投入するときは
varbinary(MAX) ← Document.doc(バイナリオブジェクトとして)
varchar(20) ← .doc
のようにすることで、IFilterはWORD文書であることを認識し、文書を文字化する。つまり、プログラムを組むときは自動的に拡張子を分離し、データ型列のデータとして格納することになる。

変数に文章を格納するときは、以下のような感じで。(例ではActiveX Data Objectの参照設定が必要)
Dim FILE_IMAGE() As Byte
Dim adoStream As ADODB.Stream
Dim FILE_SPEC=”C:\FOLDER\DOCUMENT.docx”
adoStream = New ADODB.Stream
adoStream.Type = ADODB.StreamTypeEnum.adTypeBinary
adoStream.Open()
adoStream.LoadFromFile(FILE_SPEC)
FILE_IMAGE = adoStream.Read
adoStream.Close()

■フルテキストインデックスの定義
SQL Server のstudioで「フルテキストの定義」を実行すれば作成されるが、ビューテーブルの場合や複雑な式はT-SQLでクエリを作成しなければならないことがある。
フルテキスト インデックス作成ウィザードの使用

■フィルターの定義。
以下のプログラム(各社から提供されているフィルター)をネットから探してインストールする。(64ビットOSの場合)

FilterPack64bit.exe
office-kb2124512-fullfile-x64-glb.exe
PDFFilter64Setup.msi

サーバーの環境設定(PATH)に以下を追加する。
C:\Program Files\Adobe\Adobe PDF iFilter 11 for 64-bit platforms\bin\
以上を設定したら再起動。

■IFilerを定義する
studioのクエリで以下を実行する。細かいことはコマンドをネットで検索して説明を読むこと。要はフィルター定義を読み込み、証明されていなくとも読み込むこととし、更新し、プロセスを再起動し、設定を強制上書き。その後に設定されたリストを表示する。

EXEC sp_fulltext_service @action='load_os_resources', @value=1;
EXEC sp_fulltext_service 'verify_signature', 0;
EXEC sp_fulltext_service 'update_languages';
EXEC sp_fulltext_service 'restart_all_fdhosts';
reconfigure with override;
go

SELECT * FROM sys.fulltext_document_types ;
SELECT * FROM sys.fulltext_languages;
EXEC sp_help_fulltext_system_components 'filter';

エラーがなければリストが画面に表示される。

■その他
カタログの再構築はstudioのストレージ、フルテキストカタログの中にあるカタログを右クリックして再構築。
ビューをフルテキストインデックス化する際は、変更のたびに再構築。

1
TB(0) | 記事URL |コメント |通報
画面TOPへ [最新順表示]  1 件
Profile
お疲れぷろぐらま
性別男性
年齢55歳
誕生7月中旬
星座かに座
血液B型
身長173cm
体型がっちり型
職業プログラマ
地域宮城県
性格温厚
趣味写真・ドライブ
チャームつぶらなひとみ?
長所のんびり
短所白黒はっきり
特技プログラム作り
自己紹介
ソフトンハウスの制作をしています。
Category
ITコンサルタント(65)
Windows 7(17)
Windows Server(57)
アフリエイト・SEO対策(8)
おしゃれ(2)
ぐるめ(11)
なし(11)
宇宙のお話(39)
宇宙のお話 雑談(1)
景気を良くしよう。(18)
構築プロジェクト(3)
雑談(162)
製作日記(128)
東日本大震災(19)
→リスト表示する
Favorite
はぶりんブログ
ティップの大冒険
デェ〜王
ROSE HEART
ソフトンハウス
Archive
2024年09月 (1)
2022年11月 (2)
2022年10月 (7)
2022年07月 (1)
2022年06月 (1)
2022年03月 (1)
→リスト表示する
今日
今月
累計
掲載情報などの無断転用・転載を禁止します。著作権は 株式会社ソフトウエア開発 に属します。
本サイトに関するお問い合わせ、広告等の掲載依頼は ソフトンハウス運営チーム までご連絡ください。