अंत में, SQL सर्वर को एक्सेस डेटाबेस से "बात" करने के कई असफल प्रयासों के बाद - या तो SSMS में "लिंक्ड सर्वर" के रूप में या OPENROWSET()
के माध्यम से टी-एसक्यूएल में - मुझे यह ब्लॉग पोस्ट मिला जिसमें निम्नलिखित तीन (3) सुझाव दिए गए हैं।
ट्वीक #1:OLE DB प्रदाता सेटिंग
एसीई (या जेट) के लिए ओएलई डीबी प्रदाता के पास "डायनामिक पैरामीटर" और "इनप्रोसेस की अनुमति दें" विकल्प सक्षम होना चाहिए। SSMS में,
. खोलेंसर्वर ऑब्जेक्ट> लिंक किए गए सर्वर> प्रदाता
शाखा, "Microsoft.ACE.OLEDB.12.0" (या "Microsoft.Jet.OLEDB.4.0") पर राइट-क्लिक करें, "गुण" चुनें, और सुनिश्चित करें कि वे विकल्प चुने गए हैं:
ट्वीक #2:अस्थायी फ़ोल्डर अनुमतियां
यह वही है जो मुझे स्टंप कर रहा था।
स्पष्ट रूप से SQL सर्वर को किसी एक्सेस डेटाबेस के विरुद्ध ओएलई डीबी क्वेरी चलाते समय अस्थायी फ़ाइल में जानकारी लिखने की आवश्यकता होती है। क्योंकि SQL सर्वर एक सेवा के रूप में चल रहा है, यह उस खाते के %TEMP% फ़ोल्डर का उपयोग करता है जिसके अंतर्गत सेवा चल रही है।
यदि SQL सर्वर सेवा अंतर्निहित "नेटवर्क सेवा" खाते के अंतर्गत चल रही है तो अस्थायी फ़ोल्डर है
%SystemRoot%\ServiceProfiles\NetworkService\AppData\Local\Temp
और अगर यह बिल्ट-इन "लोकल सर्विस" खाते के तहत चल रहा है तो अस्थायी फ़ोल्डर है
%SystemRoot%\ServiceProfiles\LocalService\AppData\Local\Temp
मेरी समस्या यह थी कि SSMS my . के अंतर्गत चल रहा था खाता (नेटवर्क सेवा नहीं) इसलिए मेरे पास केवल Temp फ़ोल्डर तक पढ़ने की पहुंच थी
एक बार जब मैंने स्वयं को उस फ़ोल्डर पर अनुमतियाँ संशोधित करें
और OPENROWSET प्रश्नों को सक्षम किया जैसा कि यहां एक अन्य प्रश्न में प्रलेखित है, अर्थात् ...
EXEC sp_configure 'show advanced options', 1
RECONFIGURE
GO
EXEC sp_configure 'ad hoc distributed queries', 1
RECONFIGURE
GO
... मेरी क्वेरी ने ठीक काम किया:
ट्वीक #3:मेमोरी_टू_रिजर्व
हालाँकि मुझे अपने मामले में इसका उपयोग करने की आवश्यकता नहीं थी, उपरोक्त ब्लॉग यह भी दावा करता है कि SQL सर्वर सेवा के लिए "-g memory_to_reserve" स्टार्टअप पैरामीटर को समायोजित करने से भी इसी तरह की त्रुटियों से बचने में मदद मिल सकती है। ऐसा करने के लिए:
- SQL सर्वर कॉन्फ़िगरेशन प्रबंधक लॉन्च करें
- SQL सर्वर सेवा ("SQL सर्वर सेवाएँ" टैब) पर राइट-क्लिक करें और "गुण" चुनें
- "उन्नत" टैब पर,
-g512;
. को प्रीपेन्ड करें "स्टार्टअप पैरामीटर्स" सेटिंग में - SQL सर्वर सेवा को पुनरारंभ करें
"memory_to_reserve" सेटिंग के बारे में अधिक जानकारी के लिए यहां MSDN आलेख देखें।