"ODBC--कॉल विफल" के कारण के बारे में अधिक जानकारी प्राप्त करने के लिए। त्रुटि हम DBEngine.Errors
. के माध्यम से लूप कर सकते हैं संग्रह करें और देखें कि क्या अन्य संदेश हैं जो थोड़ा अधिक वर्णनात्मक हो सकते हैं। उदाहरण के लिए, कोड के साथ
qdf.Connect = strConnectionString
qdf.SQL = " EXEC [dbo].[SAMPLE_TEST]"
qdf.ReturnsRecords = True
On Error GoTo oops
Set rst = qdf.OpenRecordset
Debug.Print rst!RecordCount
rst.Close
Set rst = Nothing
Exit Sub
oops:
Dim dbeError As Error
For Each dbeError In DBEngine.Errors
Debug.Print "(" & dbeError.Number & "): " & dbeError.Description
Next
End Sub
हम VBA तत्काल विंडो में निम्नलिखित देख सकते हैं:
(229): [Microsoft][ODBC SQL Server Driver][SQL Server]The EXECUTE permission was denied on the object 'SAMPLE_TEST', database 'myDb', schema 'dbo'.
(3146): ODBC--call failed.
निश्चित रूप से
<ब्लॉकक्वॉट>ऑब्जेक्ट 'SAMPLE_TEST', डेटाबेस 'myDb', स्कीमा 'dbo' पर EXECUTE अनुमति अस्वीकार कर दी गई थी।
सिर्फ
. की तुलना में काफी अधिक सहायक है <ब्लॉकक्वॉट>ODBC--कॉल विफल रहा।