PDA

Vollständige Version anzeigen : Prozeduraufruf im SQL Server


Markus Chemnitz
27.03.2006, 12:10
AC 2K + SQL Server 2K, ODBC Verknüpfung.

Ich möchte aus ACCESS heraus per Bepper eine Prozedur auf dem SQL Server ausführen, die nichts zurückgibt und keine Parameter übergeben bekommt.

Private Sub Befehl57_Click()
Dim stpCMD As ADODB.Command
Set stpCMD = New ADODB.Command
With stpCMD
'Verbindung
.ActiveConnection = CurrentProject.Connection

'Commandobjecttyp
.CommandType = adCmdStoredProc

'Name der Prozedur
.CommandText = "mittel_suche"

'Ausführen
.Execute

End With

'Objekt schliessen
Set objCMD = Nothing

End Sub


Das haut aber nicht hin. Die Fehlermeldung lautet:

Das Microsoft Jetdatenbankmodul findet die Eingangstabelle oder Abfrage 'mittel_suche' nicht. Stellen Sie sicher, dass sie existiert und der Name richtig eingegben wurde.

Das stimmt aber alles ! ??????????????

Danke !

gustavmeyer
27.03.2006, 13:29
Hi,

ich würde nicht mit CurrentProject.Connection arbeiten, sondern ein eigenes Connection Objekt öffnen, das direkt auf den SQL-Server zugreift, ohne zwischengeschaltetes ODBC auskommt.

ein möglicher Connection-String:
PROVIDER=SQLOLEDB.1;PASSWORD=;PERSIST SECURITY INFO=TRUE;USER ID=sqluser;INITIAL CATALOG=database;DATA SOURCE=sqlserver

Markus Chemnitz
27.03.2006, 13:48
dankeschön - aber ich kann mit diesem String nichts anfangen.

Mein Servername: Server1
Meine Datenbank: DB1
mein 'sa' passwort: 'test'

Könntest Du da in Deinen String einbasteln. Der Fehler tritt jetzt bereits nach SQLOLEDB.1 auf ?????

Danke !

Mark B

gustavmeyer
27.03.2006, 13:57
ungetestet:


Dim oConn as NEW ADODB.Connection
oConn.open "PROVIDER=SQLOLEDB.1;PASSWORD=test;PERSIST SECURITY INFO=TRUE;USER ID=sa;INITIAL CATALOG=DB1;DATA SOURCE=server1"

...

.ActiveConnection = oConn

...