मुझे डुएल तालिका दिखाई देती है। मतलब, आप ओरेकल का उपयोग कर रहे हैं :)
अधिकांश (सभी?) क्लाइंट/सर्वर डीबीएमएस के पास कुछ कार्रवाई के लिए डीबीएमएस से पूछने के अलावा, एक कनेक्शन खो गया है, यह पता लगाने का कोई तरीका नहीं है। और बहुत सारे कारण हैं, कनेक्शन क्यों खो गया है। नेटवर्क विफलता हो सकती है, हो सकता है ..., एक डीबीए एक डीबी बंद कर दिया जा सकता है।
ओरेकल ओसीआई समेत कई डीबीएमएस एपीआई में विशेष कार्य होते हैं, जो डीबीएमएस को पिंग करने की अनुमति देते हैं। "पिंग" डीबीएमएस के लिए सबसे छोटा संभव अनुरोध है। उपरोक्त चयन को इस तरह के पिंग की तुलना में अधिक नौकरी की आवश्यकता है।
लेकिन एडीओ समेत सभी डेटा एक्सेस घटकों को डीबीएमएस एपीआई पिंग कॉल का उपयोग करके डीबीएमएस पिंग करने की अनुमति नहीं है। फिर आपको कुछ एसक्यूएल कमांड का उपयोग करना होगा। तो, उपर्युक्त चयन एडीओ के साथ सही है। अन्य विकल्प - BEGIN न्यूल; समाप्त;। यह कम डीबीएमएस संसाधनों का उपयोग कर रहा है (अनुकूलक की कोई आवश्यकता नहीं है, परिणाम सेट का वर्णन करने की कोई आवश्यकता नहीं है, आदि)।
टीटीमर ठीक है। क्वेरी को थ्रेड में किया जाना चाहिए, जहां संबंधित कनेक्शन का उपयोग किया जाता है। हालांकि एक जरूरी नहीं है, लेकिन यह एक अलग मुद्दा है।
कनेक्शन बंद होने पर संभावित कनेक्शन एक कनेक्शन को बंद करने के लिए हो सकता है। एक कनेक्शन बंद होने के कारण डीबीएमएस एपीआई एक असफल स्थिति में हो सकता है क्योंकि अपवाद बढ़ा सकता है।
कि किस तरह ...
स्रोत
2010-02-18 15:39:52
एसक्यूएल सर्वर Qry.ExecSQL को SQL.Text = '' के साथ एक क्वेरी (लेकिन नहीं '' के रूप में अनुमति देता है)। इसे प्रति सेकंड सैकड़ों बार निष्पादित किया जा सकता है। –