यह मैं अब तक अपना शोध से क्या सीखा है है।
.NET कनेक्शन सेटिंग्स में भेजता है जो आपके द्वारा प्रबंधित स्टूडियो में लॉग इन करते समय प्राप्त नहीं होते हैं।
-- network protocol: TCP/IP
set quoted_identifier off
set arithabort off
set numeric_roundabort off
set ansi_warnings on
set ansi_padding on
set ansi_nulls off
set concat_null_yields_null on
set cursor_close_on_commit off
set implicit_transactions off
set language us_english
set dateformat mdy
set datefirst 7
set transaction isolation level read committed
मैं अब हर क्वेरी है कि मैं जब एसक्यूएल सर्वर में लॉग इन चलाने ऊपर में स्थापित करने के लिए उन, सुनिश्चित करें कि सेटिंग्स ही कर रहे हैं बनाने के लिए चिपकाने हूँ: यहाँ आप जो देखते हैं अगर आप Sql प्रोफाइलर के सिलसिले सूंघ है।
इस मामले के लिए, मैंने अलग-अलग सेटिंग को अलग-अलग करने की कोशिश की, डिस्कनेक्ट करने और फिर से कनेक्ट करने के बाद, और पाया कि एरिथबोर्ट को बदलने से 9 0 सेकंड से 1 सेकंड तक समस्या क्वेरी कम हो गई है।
सबसे संभावित स्पष्टीकरण पैरामीटर स्नीफिंग से संबंधित है, जो एक तकनीक एसक्यूएल सर्वर है जो इसे सोचने के लिए उपयोग करती है वह सबसे प्रभावी क्वेरी योजना है। जब आप कनेक्शन सेटिंग्स में से किसी एक को बदलते हैं, तो क्वेरी ऑप्टिमाइज़र एक अलग योजना चुन सकता है, और इस मामले में, यह स्पष्ट रूप से खराब है।
लेकिन मुझे इस बात से पूरी तरह से आश्वस्त नहीं है। मैंने इस सेटिंग को बदलने के बाद वास्तविक क्वेरी योजनाओं की तुलना करने की कोशिश की है और मैंने अभी तक किसी भी बदलाव को दिखाने के लिए नहीं देखा है।
क्या अरिथबोर्ट सेटिंग के बारे में कुछ और है जो कुछ मामलों में धीरे-धीरे चलने के लिए क्वेरी का कारण बन सकता है?
समाधान सरल लग रहा था: बस संग्रहित प्रक्रिया के शीर्ष पर arithabort सेट करें। लेकिन इससे विपरीत समस्या हो सकती है: क्वेरी पैरामीटर को बदलें और अचानक यह 'ऑन' से 'ऑफ' के साथ तेजी से चलता है।
समय के लिए मैं यह सुनिश्चित करने के लिए 'रीकंपाइल के साथ' प्रक्रिया चला रहा हूं ताकि यह सुनिश्चित किया जा सके कि योजना हर बार पुनर्जीवित हो जाती है। यह विशेष रिपोर्ट के लिए ठीक है, क्योंकि इसे फिर से संकलित करने में एक सेकंड लग सकता है, और यह एक रिपोर्ट पर बहुत ध्यान देने योग्य नहीं है जो वापस लौटने के लिए 1-10 सेकंड लेता है (यह एक राक्षस है)।
लेकिन यह अन्य प्रश्नों के लिए एक विकल्प नहीं है जो अधिक बार चलते हैं और जितनी जल्दी संभव हो सके, कुछ मिलीसेकंड में लौटने की आवश्यकता होती है।
मैं एक ही समस्या थी और http://stackoverflow.com/questions/250713/sqldataadapter-fill-method-slow मेरी समस्या – David