2008-09-04 11 views
12

मैं एमएस एसक्यूएल सर्वर में एक कस्टम समग्र फ़ंक्शन कैसे बना सकता हूं? एक उदाहरण बहुत मदद करेगा।एमएस एसक्यूएल सर्वर में कस्टम कुल कार्य?

+0

यह [उदाहरण] (http://msdn.microsoft.com/en-us/library/ms182741.aspx) और [यह] (http://msdn.microsoft.com/en-us/library/ms131056 .aspx) आपको जाना चाहिए। – vzczc

उत्तर

1

SQL Server 2000 आधिकारिक तौर पर कस्टम समग्र कार्यों का समर्थन नहीं करता है। हालांकि, मैं हाल ही में है कि कार्यक्षमता की जरूरत के रूप में अच्छी तरह से है, और मैं इस लेख शिक्षाप्रद पाया:
http://weblogs.sqlteam.com/jeffs/articles/1490.aspx

यह थोड़ा हैक-ish, हालांकि है: यह sp_OA___ विस्तारित प्रक्रियाओं के लिए उपयोग की आवश्यकता है।

सार है कि आप चार आवरण काम करता है, जिनमें से प्रत्येक निम्नलिखित कार्यों में से एक करता है की एक श्रृंखला के साथ अनुकरण कर सकते हैं एक समग्र समारोह:

  1. एक ActiveX उद्देश्य यह है कि भीतर राज्य धारण कर सकते हैं बनाएं क्वेरी। क्वेरी चलाने से पहले इस पर कॉल करें।
    • ActiveX ऑब्जेक्ट का उपयोग करके वास्तविक एकत्रीकरण करें।
    • ग्रुप बाय सीमाओं पर ActiveX ऑब्जेक्ट स्थिति साफ़ करें
    • ऑब्जेक्ट को नष्ट करें। क्वेरी के बाद और त्रुटि प्रबंधन के दौरान इस पर कॉल करें।

इसके बाद आप आइटम 2 और 3 आपकी क्वेरी के लिए चयन सूची में, और आइटम 2 भी मैक्स() या मिन() की तरह एक मौजूदा कोई प्रभाव एकीकृत फ़ंक्शन में लिपटे किया जाना चाहिए शामिल हैं। आप पंक्ति संख्या जैसे चीजों को करने के लिए संचयी कार्यों के लिए इस तकनीक का भी उपयोग कर सकते हैं।

कुछ टिप्पणियों से पता चलता है कि ऑप्टिमाइज़र कुछ परिस्थितियों में कॉल को अनुकूलित करके एकत्रीकरण प्रभाव को अस्वीकार करने का प्रयास कर सकता है, हालांकि मुझे उम्मीद है कि वास्तव में यह एक बहुत ही दुर्लभ मामला होगा। हालांकि, मुझे यह सवाल मिला क्योंकि मैंने उन चेतावनियों को गंभीरता से कुछ बेहतर खोजना जारी रखने के लिए पर्याप्त रूप से लिया था।

संबंधित मुद्दे