संपादित करें: समान त्रुटि के साथ यहां आने वालों के लिए, मेरी गलती एकीकृत सुरक्षा के लिए एसएसपीआई के बजाय 'सत्य' का उपयोग कर रही थी।

मूल पोस्ट यहां है।

मैं एक्सेल 2016 (ऑफिस 365 प्रोफेशनल प्रो) का उपयोग कर रहा हूं। वीबीए में मैंने 'माइक्रोसॉफ्ट एक्टिवएक्स डेटा ऑब्जेक्ट्स 6.1 लाइब्रेरी' का संदर्भ जोड़ा है और नीचे दिए गए कोड में मुझे SQL सर्वर 2012 या 2008 से कनेक्ट करने का प्रयास करते समय ओपन स्टेटमेंट पर एक त्रुटि मिल रही है:

रन-टाइम त्रुटि '-2147217887 (80040e21)':
स्वचालन त्रुटि

एरर ऑब्जेक्ट की जाँच से पता चलता है

  • एकाधिक-चरण पुराने ऑपरेशन ने त्रुटियां उत्पन्न कीं। प्रत्येक ओले डीबी स्थिति मान की जाँच करें
  • संख्या: -2147217887
  • स्रोत: प्रदाता

मुझे पता है कि कनेक्शन स्ट्रिंग और उपयोगकर्ता ठीक है और यह वही है जो मैं सी # कोड में उपयोग करता हूं और ओडीबीसी के माध्यम से यह ठीक है। मैंने उपयोगकर्ता क्रेडेंशियल्स, 2.8 ओल्डब लाइब्रेरी, और यहां तक ​​कि डीएसएन में 'डेटाबेस' और 'सर्वर' में बदलने का भी प्रयास किया है। केवल अंतर सी # में है मैं प्रदाता के रूप में System.Data.SqlClient का उपयोग करता हूं।

कोई विचार कैसे अधिक जानकारी प्राप्त करें या कोई विचार क्या गलत हो सकता है।

Dim conn As New ADODB.Connection
Dim cmd As New ADODB.Command
Dim sql As String
Dim counter As Integer
Dim val As String

'MsgBox "Start"
conn.ConnectionString = "Provider=SQLOLEDB;Initial Catalog=MYDATABASE;data source=MYSERVER;Integrated Security=true"
conn.Open

संपादित करें: मैं डेटा कनेक्शन के माध्यम से कनेक्शन बना सकता हूं और मेरी ओडीसी फ़ाइल में यह कहता है:

  <odc:Connection odc:Type="OLEDB">
   <odc:ConnectionString>Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;Data Source=SERVER;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=xxx;Use Encryption for Data=False;Tag with column collation when possible=False;Initial Catalog=MYDATABASE</odc:ConnectionString>
   <odc:CommandType>Table</odc:CommandType>
  </odc:Connection>
0
Neil 14 जिंदा 2020, 15:48

1 उत्तर

सबसे बढ़िया उत्तर

आप एक्सेल मेनू में "डेटा>अन्य स्रोत" के माध्यम से अपने एक्सेल को लिंक करने का प्रयास करके समस्या को कम करने का प्रयास कर सकते हैं। यह कोड को ठीक नहीं करेगा, लेकिन आपको यह देखने में मदद करनी चाहिए कि आपकी कनेक्शन स्ट्रिंग में कुछ गड़बड़ है या नहीं।

0
Gorille 14 जिंदा 2020, 13:01