Properti dokumen SQL Server Filetable


9

Saya menggunakan Filetable SQL Server 2012 untuk menyimpan dokumen dan mencari dengan Semantic Search .

Saya bertanya-tanya apakah ada cara untuk membuat daftar semua properti dokumen (meta data). Ada cara untuk membiarkan indeks Pencarian Teks Lengkap dan mencari melalui properti dokumen. Saya bisa membuat daftar properti Indeks SQL Server dengan pernyataan berikut:

 SELECT * FROM sys.registered_search_properties; 

Saya juga dapat memperpanjang daftar ini dengan SQL atau menggunakan program .

Apa yang saya tidak temukan adalah cara untuk membuat daftar informasi yang sebenarnya. Yang saya cari adalah daftar seperti:

  • Penulis : Ruud van de Beeten
  • Judul : Dokumen uji
  • properti khusus : nilai khusus

Adakah yang bisa mengarahkan saya ke arah yang benar?

Sunting : Bob Beauchemin membuat tiket yang menjelaskan masalah saya. Karena DMV tidak mencantumkan nilai properti, saya tidak dapat menggunakannya dalam proyek saya.

Saya akhirnya menggunakan C # untuk membuat daftar properti khusus dengan objek OleDocumentProperties . Objek ini dapat membaca properti dari dokumen Office. Saya akan terus menonton pertanyaan ini, berharap solusi yang lebih baik.

Jawaban:


10

Sepertinya (saat ini) yang terbaik yang dapat Anda lakukan adalah menggunakan kata kunci di properti, bergabung dengan mereka ke dokter dan silangkan jari Anda sudah cukup.

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

MSDN pada DMV itu - http://msdn.microsoft.com/en-us/library/ee677646.aspx

Berikut adalah diskusi dengan Bob Beauchemin dan saya tentang topik: https://twitter.com/bobbeauch/status/275101491084292096

Bob memberi tahu saya tentang DMV yang disebutkan di atas dan cukup banyak mengkonfirmasi bahwa itu adalah cara yang paling mungkin.

Inilah tiket Connect yang dibuat Bob untuk topik ini: https://connect.microsoft.com/SQLServer/feedback/details/773212/provide-complete-fts-property-values-in-a-dmv-side-table

Kami juga melanjutkan untuk berbicara tentang bagaimana mungkin lebih baik untuk memiliki semacam preprocessor untuk mengeluarkan meta info, menyimpannya, (tidak yakin apakah Anda menormalkan format dokumen Anda atau tidak), dan kemudian memproses ulang jika dimodifikasi. Bob menyarankan mungkin bisa melakukan ini dengan pemicu / proc SQLCLR yang akan menjadi solusi yang lebih pintar dan membuat Anda semua jenis kotor.


terima kasih telah meluangkan waktu untuk menjawab pertanyaan saya. Saya mengetahui tentang dmv, tetapi saya tidak dapat menggunakannya. Tiket yang dibuat Bob menggambarkan dengan baik apa masalah saya.
Ruud van de Beeten

Ini adalah jawaban terbaik (dan satu-satunya) sejauh ini. Saya akhirnya menggunakan C # untuk membuat daftar properti khusus dengan objek OleDocumentProperties . Saya akan menonton pertanyaan ini, berharap ada solusi.
Ruud van de Beeten

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.