Forums Neueste Beiträge
 

Access und gespeicherte Prozeduren

17/09/2007 - 20:56 von Irmgard Schwenteck | Report spam
Hallo,

bevor ich hier vielleicht noch weiter auf dem Holzweg laufe, frag ich
doch mal kurz:
Access 2003 Jet-Datenbank
SQL-Server 2000
lassen sich gespeicherte Prozeduren mit Parameterübergabe überhaupt per
VBA aufrufen (ADODB.Command) oder geht das nur bei Access-Projekten?

Access meldet jedenfalls immer "Das Microsoft Jet-Datenbankmodul findet
die Eingangstabelle oder Abfrage 'delBasisprojekt' nicht."


Gruß
Irmgard
 

Lesen sie die antworten

#1 Klaus Oberdalhoff
17/09/2007 - 22:21 | Warnen spam
Hi,

Access 2003 Jet-Datenbank
SQL-Server 2000
lassen sich gespeicherte Prozeduren mit Parameterübergabe überhaupt
per VBA aufrufen (ADODB.Command) oder geht das nur bei
Access-Projekten?
Access meldet jedenfalls immer "Das Microsoft Jet-Datenbankmodul
findet die Eingangstabelle oder Abfrage 'delBasisprojekt' nicht."



lt. B2.8 www.sqlfaq.de geht das; dort gibt es gibt auch Downloadbeispiele
dazu ...


meine "Tipps&Tricks-Sammlung" (Beispiel aus dem Jahr 2000) meint dazu:

I use this syntax, and it's working fine.can be improved though

Dim ADOConn As ADODB.Connection
Dim ADOComm As New ADODB.Command
Dim ADORs As New ADODB.Recordset

Set ADOConn = New ADODB.Connection
ADOConn.Open "DSN=conntest", "username", "password"
Set ADOComm.ActiveConnection = ADOConn
ADOComm.CommandText = "STORED_PROC_ONE"
ADOComm.CommandType = adCmdStoredProc
ADOComm.Parameters(1).Value = value1;
ADOComm.Parameters(2).Value = value2;
ADOComm.Parameters(3).Value = value3;

Set ADORs.DataSource = ADOComm.Execute()

If ADORs.BOF Or ADORs.EOF Then
MsgBox ("No Records")
Else
MsgBox (ADORs.Fields(0).Value)
End If

ADORs.Close
ADOConn.Close


hier ein Beispiel mit VB6 und ADO

http://support.microsoft.com/kb/q194792/


geht sogar mit DAO

You have to create a pass-through query, and dynamically generate the SQL
for it.

Dim qdfCurr As DAO.QueryDef
Dim strSQL As String

strSQL = "exec p_get_sla " & param1 & ", " & param2

Set qdfCurr = CurrentDb.CreateQueryDef("MyQuery")
qdfCurr.Connect = <appropriate connect string>
qdfCurr.SQL = strSQL

mit freundlichen Grüßen aus Nürnberg

Klaus Oberdalhoff
Ich unterstütze PASS Deutschland e.V. (http://www.sqlpass.de)
Nàchstes Treffen in Nürnberg am 18.09.2007

Ähnliche fragen