हाल ही में एक ग्राहक ने एक वर्कअराउंड साझा किया जिसने Oracle को SQL सर्वर से कनेक्ट करने के लिए हमारे SQL सर्वर ODBC ड्राइवर का उपयोग करते समय उत्पन्न हुई समस्या का समाधान किया। ग्राहक को जो त्रुटि मिल रही थी वह थी:
mytable@MYLINKEDDATABASEWHERE से हटाएं MyCol ='MyValue';17:01:01 [हटाएं - 0 पंक्ति (पंक्तियां), 0.000 सेकेंड] [त्रुटि कोड:2070, SQL स्थिति:42000] ORA-02070:डेटाबेस MYLINKEDDATABASE नहीं करता है इस संदर्भ में कुछ फ़ंक्शन का समर्थन करें
और इसके द्वारा हल किया गया:
SQL> HS_FDS_CLASS से fds_class_name चुनें;ODBC11.2.0.2.0_0008exec dbms_hs.replace_class_caps('ODBC11.2.0.2.0_0008', 564,'ODBC11.2.0.2.0_0008',564, 8191,NULL,1);PL /एसक्यूएल प्रक्रिया सफलतापूर्वक पूर्ण
Oracle में, "HS_FDS_CLASS से FDS_CLASS_NAME का चयन करें" एक स्ट्रिंग लौटाएगा जो आपके DG4ODBC संस्करण की पहचान करती है। उदा.:
ODBC11.2.0.2.0_0008
इस क्वेरी को चलाना:
चुनें * HS_CLASS_CAPS से जहां FDS_CLASS_NAME ='ODBC11.2.0.2.0_0008';
कई "क्षमताओं" को लौटाता है जो दिखाती है कि DG4ODBC को व्यवहार करने के लिए कैसे कॉन्फ़िगर किया गया है।
पहले दिखाए गए उदाहरण में, ग्राहक एक NVARCHAR कॉलम था प्रकार। Oracle समर्थन के निर्देशन में, ग्राहक इस डेटा प्रकार के संबंध में DG4ODBC के व्यवहार में परिवर्तन करता है।
ग्राहक को संबंधित फ़ील्ड HS_CLASS_CAPS . में मिली :
564 TO_NCHAR(op1) 0
और इसे Oracle पैकेज, DBMS_HS.ALTER_CLASS_CAPS से बदल दिया। ।
ध्यान दें कि विभिन्न DG4ODBC क्षमताएं क्या करती हैं, ऐसा लगता है, कहीं भी सार्वजनिक रूप से प्रलेखित नहीं हैं। इसलिए यह ब्लॉग विशिष्ट मार्गदर्शन प्रदान नहीं कर सकता है कि किसी विशिष्ट समस्या को हल करने के लिए उनका उपयोग कैसे किया जाए। इसके बजाय, ब्लॉग आपको यह बताने के लिए प्रदान किया जाता है कि आपके पास एक और उपकरण है, यदि DG4ODBC कॉन्फ़िगरेशन फ़ाइल में पैरामीटर संपादित करने से, init.ora आपके DG4ODBC कनेक्टिविटी के साथ होने वाली किसी भी समस्या का समाधान नहीं करता है।
यह भी देखें
- टीजी4एमएसक्यूएल 10.2 या डीजी4ओडीबीसी 11.2 का उपयोग करके स्टेटमेंट को हटाएं या अपडेट करें जहां क्लॉज ओआरए -2070 त्रुटि देता है वहां नवरचर फील्ड का संदर्भ देना
- पुन::ODBC और यूनिकोड के लिए Oracle डेटाबेस गेटवे के साथ समस्या