Quantcast
Channel: Microsoft Access Forum
Viewing all articles
Browse latest Browse all 880

Error 3146 beim Aufruf einer stored Procedure von ACcess aus

$
0
0

Ich rufe mit folgendem Code eine stored Prozedur auf dem SQL-Server auf.

Der Code nimmt ausgehend von den Parametern eine Datei, fügt sie einer FILESTREAMTABLE hinzu und löscht die QUelldatei.

EInige ZUsatzschritte, dei den ABlauf dokumentieren sind auch noch dabei.

Sub DokAnfuegen(Fallnr As Long, filename As String, srcfile As String, subject As String)
    Dim db As DAO.Database
    Dim DokAnfuegen As DAO.QueryDef
    Dim sqlstr As String

    Set db = CurrentDb
    Set DokAnfuegen = db.CreateQueryDef("")

    sqlstr = "EXEC dbo.DokumentERfassen " & Fallnr & "," & _"'" & filename & "', '" & _
                srcfile & "', " & _"'" & subject & "'"
    Debug.Print "DokAnfuegen sqlstr=  "; sqlstr
        With DokAnfuegen
            .Connect = "ODBC;DRIVER=SQL Server;SERVER=GALILEO2010;DATABASE=Gutachten;Trusted_Connection=yes"
            .SQL = sqlstr
            .ReturnsRecords = False
            .Parameters.Refresh

            Debug.Print .Parameters(1).Name
            .Execute
        End With

End Sub

Der zusammengebaute sqlstr funktioniert (und damit die Prozedur), wenn ich ihn im SQL Management Studio separat ausführen lasse.

Dennoch kommt im VBA-Code bei .Execute der Fehler 3146. Auch die Zeile mit Ausdurck des ersten Parameternamens schlägt fehl.

Ich schätze, da ist ein grundlegender Fehler schon beim Connect zur Datenbank.


Viewing all articles
Browse latest Browse all 880


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>