SQL सर्वर फ़िल्टर करने योग्य दस्तावेज़ गुण


9

मैं दस्तावेज़ों को संग्रहीत करने और उन्हें सिमेंटिक खोज के साथ खोजने के लिए SQL Server 2012 के Filetable का उपयोग कर रहा हूं ।

मैं सोच रहा था कि क्या सभी दस्तावेज़ गुणों (मेटा डेटा) को सूचीबद्ध करने का एक तरीका है । वहाँ का एक तरीका है पूर्ण पाठ खोज अनुक्रमणिका को जाने और दस्तावेज़ गुण माध्यम से खोज। मैं निम्नलिखित कथन के साथ गुण SQL सर्वर अनुक्रमित सूची बना सकता हूं:

 SELECT * FROM sys.registered_search_properties; 

मैं इस सूची को SQL के साथ या प्रोग्राम का उपयोग करके भी बढ़ा सकता हूं ।

मुझे जो नहीं मिला वह वास्तविक जानकारी को सूचीबद्ध करने का एक तरीका है। मैं जो देख रहा हूं वह एक सूची है:

  • लेखक : रूड वान डी बीटेन
  • शीर्षक : टेस्ट दस्तावेज़
  • कस्टम संपत्ति : कस्टम मूल्य

क्या कोई मुझे सही दिशा दिखा सकता है?

संपादित करें : बॉब बेउचेमिन ने मेरी समस्या का वर्णन करते हुए एक टिकट बनाया । चूंकि DMV संपत्ति मूल्यों को सूचीबद्ध नहीं कर रहा है, मैं इसे अपने प्रोजेक्ट में उपयोग नहीं कर सकता।

मैंने OleDocumentProperties ऑब्जेक्ट के साथ कस्टम गुणों को सूचीबद्ध करने के लिए C # का उपयोग किया । यह ऑब्जेक्ट किसी 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

यहाँ बॉब बेउचेमिन और I के साथ इस विषय पर एक चर्चा है: https://twitter.com/bobbeauch/status/275101491084292096

बॉब ने मुझे ऊपर उल्लिखित DMV के बारे में बताया और बहुत अधिक पुष्टि की कि यह सबसे संभावित तरीका है।

यहाँ इस विषय के लिए कनेक्ट टिकट बॉब बनाया गया है: https://connect.microsoft.com/SQLServer/feedback/details/773212/provide-complete-fts-property-values-in-a-dmv-side-table

हम इस बारे में बात करने के लिए भी जाते हैं कि मेटा जानकारी को खींचने के लिए किसी प्रकार का पूर्वप्रक्रमक होना बेहतर कैसे हो सकता है, इसे स्टोर करें, (यह सुनिश्चित नहीं करें कि आप अपने डॉक्स का प्रारूप सामान्य करते हैं या नहीं), और फिर संशोधित होने पर पुन: प्रिंट करें। बॉब का सुझाव है कि शायद यह एक SQLCLR ट्रिगर / proc के साथ खींच सकता है जो एक चतुर समाधान होगा और अपने हाथों को सभी प्रकार के गंदे हो जाएगा।


मेरे प्रश्न का उत्तर देने के लिए समय निकालने के लिए धन्यवाद। मुझे dmv के बारे में पता चला, लेकिन मैं इसका उपयोग नहीं कर सकता। जो टिकट बॉब ने बनाया है, वह बताता है कि मेरी समस्या क्या है।
रूड वैन डे बीटेन

यह अब तक का सबसे अच्छा (और केवल) उत्तर है। मैंने OleDocumentProperties ऑब्जेक्ट के साथ कस्टम गुणों को सूचीबद्ध करने के लिए C # का उपयोग किया । मैं इस सवाल को देखूंगा, एक समाधान की उम्मीद कर रहा हूं।
रूड वैन डे बीटेन

5

एक उत्पाद का बीटा मिला जो ऐसा करता है क्योंकि मुझे सीधे सवाल पूछा गया था। इस कंपनी से संबद्ध कोई भी तरीका नहीं है। Http://www.sqlskills.com/blogs/bobb/ पर "पूर्ण-पाठ खोज में दस्तावेज़ संपत्ति मान कैसे लौटाएँ" देखें ।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.