SQL Server Filetableドキュメントのプロパティ


9

SQL Server 2012のFiletableを使用してドキュメントを保存し、セマンティック検索で検索しています。

すべてのドキュメントプロパティ(メタデータ)を一覧表示する方法があるかどうか疑問に思いました。フルテキスト検索でインデックスを作成し、ドキュメントのプロパティを検索する方法があります。次のステートメントを使用して、SQL Serverインデックスのプロパティのリストを作成できます。

 SELECT * FROM sys.registered_search_properties; 

SQLまたはプログラムを使用してこのリストを拡張することもできます。

見つからなかったのは、実際の情報をリストする方法です。私が探しているのは次のようなリストです:

  • 著者Ruud van de Beeten
  • タイトルテスト文書
  • カスタムプロパティカスタム値

誰かが私を正しい方向に向けることができますか?

編集:ボブボーケミンが私の問題を説明するチケットを作成しまし。DMVはプロパティ値をリストしていないため、プロジェクトで使用できません。

最終的にC#を使用して、OleDocumentPropertiesオブジェクトでカスタムプロパティを一覧表示しました。このオブジェクトは、Officeドキュメントからプロパティを読み取ることができます。私はより良い解決策を期待して、この質問を監視し続けます。

回答:


10

(現時点では)プロパティでキーワードを使用し、それらをドキュメントに結合して、指を交差させるだけで十分です。

SELECT
    keyword,
    display_term,
    column_id, document_id, property_id
FROM sys.dm_fts_index_keywords_by_property
(
    DB_ID('FileTableDB'), 
    OBJECT_ID('FileTableTb')
);

そのDMVに関するMSDN- http://msdn.microsoft.com/en-us/library/ee677646.aspx

このトピックに関するボブボーシェミンと私との議論はここにあります:https : //twitter.com/bobbeauch/status/275101491084292096

ボブは上記のDMVについて私に話し、それが最も可能性の高い方法であることをかなり確認しました。

このトピック用に作成された接続チケットBobは次のとおりです。https//connect.microsoft.com/SQLServer/feedback/details/773212/provide-complete-fts-property-values-in-a-dmv-side-table

また、メタ情報を引き出して保存する(ドキュメントの形式を正規化しているかどうかわからない)種類のプリプロセッサを用意し、変更した場合は再処理する方がよい場合があることについても説明します。Bobは、SQLCLRトリガー/プロシージャを使用してこれを実現できることを示唆しています。SQLCLRトリガー/プロシージャは、かなり賢い解決策であり、あらゆる種類の汚れを手に入れます。


私の質問に答えてくれてありがとう。dmvについて知りましたが、使用できません。ボブが作成したチケットは、私の問題が最もよくわかるものです。
Ruud van de Beeten

これが今のところ最良の(そして唯一の)答えです。最終的にC#を使用して、OleDocumentPropertiesオブジェクトでカスタムプロパティを一覧表示しました。私は解決策を期待して、この質問を見ていきます。
Ruud van de Beeten

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.