मेरे पास एक डेल्फी 6 एप्लिकेशन है जो लक्ष्य डेटाबेस से कनेक्ट करने के लिए ओडीबीसी डीएसएन का उपयोग करता है। मैं उस टेक्स्ट को शामिल करना चाहता हूं जो डेटाबेस के नाम को सूचीबद्ध करता है जो डीएसएन से जुड़ा हुआ है। मैंने एसक्यूएल कमांड db_name() का उपयोग करने की कोशिश की लेकिन जब मैं SQL सर्वर में लॉग इन करता हूं तो यह काम करने के बावजूद प्रतिक्रिया में केवल एक शून्य प्राप्त हुआ।ओडीबीसी डीएसएन कनेक्टेड एप्लिकेशन में डेटाबेस नाम की पहचान करने की आवश्यकता
क्या डेल्फी के भीतर कोई तरीका है यह पहचानने के लिए कि मैं किस डेटाबेस से कनेक्ट हूं? मैं sys.databases तालिका ऊपर खींचने सकते हैं, लेकिन पहचान करने के लिए कैसे जो डेटाबेस एक मैं
से जुड़ा रहा हूँ एक उदाहरण के रूप में है कुछ नहीं कर रहा हूँ:
अगर मैं dsn LocalDSN मैं से कनेक्ट कर रहा हूँ उपयोगकर्ता को प्रदर्शित करने में सक्षम होना चाहते हैं कि वे डेटाबेस से जुड़े हुए हैं, जहां डेटाबेस एसक्यूएल डेटाबेस का नाम है जिसके साथ वे संचार कर रहे हैं।
आप नहीं DSN नाम एसक्यूएल के माध्यम से, सुनिश्चित करें कि संपत्ति जहां यह कनेक्शन वस्तु तुम में रहता है से ले जा सकते हैं के लिए ले जा सकते हैं के बाद से AFAIK इंजन ही तंत्र कनेक्ट करने के लिए प्रयोग कर रहे हैं के बारे में पता नहीं है, लेकिन आप का उपयोग करते हुए। उदाहरण के लिए, यदि आप TSQLConnection का उपयोग करते हैं, तो यह पैरामीटर पर संग्रहीत होता है। – jachguate
दुर्भाग्य से कनेक्शन ऑब्जेक्ट में केवल तीन गुण हैं - डीएसएन का नाम और उपयोगकर्ता का उपयोगकर्ता नाम और पासवर्ड। आवेदन एक TQuery और TDatabase वस्तु (vcl से दोनों) का उपयोग है कि अगर – ChargerIIC
में मदद करता है @jachguate आप बनाना चाहिए एक जवाब है कि है। –