2012-09-26 14 views
5

मैं ओडीबीसी डेटाबेस तालिका (question 12592953 देखें) के खिलाफ एक्सेस 2010 में गतिशील एपेंड क्वेरी निष्पादित करने का तरीका जानने का प्रयास कर रहा हूं और किसी ने शोप्लान डीबगिंग आउटपुट सक्षम करने का सुझाव दिया: techrepublic link। लेकिन एक्सेस 2010/accdb डेटाबेस स्पष्ट रूप से जेट इंजन का उपयोग नहीं करते हैं, इसलिए यह मेरी मदद नहीं करता है।एक्सेस 2010 से क्वेरी प्लान (showplan.out) कैसे प्राप्त करें?

अद्यतन: यह प्रश्न है कि मैं काम करने की कोशिश कर रहा हूं (एक पूर्ण विवरण ऊपर जुड़े दूसरे स्टैक ओवरफ्लो प्रश्न में है)। यह दूरस्थ प्रतिलिपि से नई पंक्तियों के साथ एक तालिका की स्थानीय प्रति अद्यतन करने के लिए माना जाता है। लेकिन क्या होता है यह एक्सेस पूरे रिमोट टेबल को खींचती है (जो बहुत बड़ी है और ओडीबीसी को टाइमआउट करने का कारण बनती है), फिर स्थानीय स्तर पर WHERE चलाती है।

INSERT INTO local (dt, latitude, longitude) 
SELECT dt, latitude, longitude 
FROM remote_odbc, (SELECT max(dt) AS max_dt FROM local) AS sub 
WHERE remote_odbc.dt > max_dt; 

वहाँ कैसे पहुँच एक प्रश्न विचार बारे में अधिक जानकारी प्राप्त करने के लिए पहुँच 2010 में जेट/डीबग/showplan रजिस्ट्री हैक करने के लिए कुछ इसी तरह है?

+0

एक्सेस में एडीओ और डीएओ है, हालांकि इसके डीएओ मूल निवासी हैं। हमें एक उदाहरण दें कि किस प्रकार का डायनामिक एपेंड एसक्यूएल कथन आप करने की कोशिश कर रहा है। अतीत में मैंने एक्सेस एसक्यूएल स्टेटमेंट्स – GoldBishop

+0

के निर्माण में सहायता के लिए सहायक कार्यों का निर्माण किया है, जहां तक ​​एसक्यूएल कथन को एक्सेस करता है, यह एक बहुत ही बुनियादी SQL कथन इंजन है। आप कुछ ढांचे वाक्यविन्यास के बाहर, नोटिस करेंगे, यह बहुत मजबूत नहीं है। आप सम्मिलित करें, हटाएं, छोड़ें, चयन करें, और कुछ एक्सेस-विशिष्ट कथन कर सकते हैं लेकिन यह सब कुछ है। बैच निष्पादन करने की क्षमता बहुत निराशाजनक है (एमएस एसक्यूएल के लिए बाएं एक्सेस और अब क्लाइंट के लिए एक्सेस पर वापस)। बैच प्रक्रिया प्रभाव प्राप्त करने का एकमात्र तरीका एक वीबीए मैक्रो और रिकॉर्डसेट के माध्यम से है। – GoldBishop

+1

@GoldBishop: मैंने सवाल अपडेट किया। पूर्ण विवरण मैं दूसरे प्रश्न में संदर्भित हूं। – cswingle

उत्तर

2

आप कुंजी निम्नलिखित की आवश्यकता होगी:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\14.0\Access Connectivity Engine\Engines\Debug] 
"JETSHOWPLAN"="ON" 

ऊपर मेरी विंडोज 7 पहुँच 2010 से चल रहा है रजिस्ट्री से निर्यात किया जाता है, और मेरे लिए showplan.out पैदा करता है।

5

धन्यवाद @Fionnuala

के लिए पहुँच 2010 32 बिट आप कुंजी निम्नलिखित की आवश्यकता होगी:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\14.0\Access Connectivity Engine\Engines\Debug] 
"JETSHOWPLAN"="ON" 

या विंडोज 7 पर 64 बिट:

32 बिट विंडोज 7 पर

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Office\14.0\Access Connectivity Engine\Engines\Debug] 
"JETSHOWPLAN"="ON" 

मुझे कुंजी डालने के लिए Debug फ़ोल्डर बनाने की आवश्यकता है।

+1

इस सेटिंग को प्रभावी बनाने के लिए एक्सेस को पुनरारंभ करना न भूलें। – paulroho

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