sql >> Database >  >> RDS >> Sqlserver

ODBC-oproep mislukt met opgeslagen procedure - Doorzoek query

Voor meer informatie over de oorzaak van een "ODBC--call failed." fout kunnen we door de DBEngine.Errors lopen collectie en kijk of er andere berichten zijn die misschien wat meer beschrijvend zijn. Bijvoorbeeld met de code

    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

we kunnen het volgende zien in het VBA Immediate-venster:

(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.

Zeker

De EXECUTE-toestemming is geweigerd voor het object 'SAMPLE_TEST', database 'myDb', schema 'dbo'.

is aanzienlijk nuttiger dan alleen

ODBC--oproep mislukt.



  1. Correct gebruik van transacties in SQL Server

  2. 2 uur toevoegen aan de huidige tijd in MySQL?

  3. SIN() Voorbeelden in SQL Server

  4. Selecteer Query om rijen op te halen in MySQL