title image


Smiley Re: Nein, das gibt keinen Sinn...
Aber, aber, Leute! Ich verstehe die ganze Aufregung um Parameter-Abfragen nicht.

Kann es sein, dass manche damit schlicht nicht zurecht kommen und deshalb abraten?



@ telefonmann:



Dim qdf As QueryDef

Dim rs As DAO.Recordset



Set qdf = CurrentDb.QueryDefs("Abfrage1")

qdf.Parameters("Parameter1") = "XY"

qdf.Parameters("Parameter2") = "PQ"

Set rs = qdf.OpenRecordset(dbOpenDynaset)

Debug.Print rs(0)

rs.Close



Zu Erläuterung: Wenn "Abfrage1" auf anderen Parameterabfragen beruht, dann wird deren Parameters-Auflistung durchgeschleift - Abfrage1 wird quasi selbst zu einer Parameterabfrage. Deshalb kann man auch für diese QueryDefs die Parameter angeben, die eigentlich zu den darunterliegenden Abfragen (Abfrage2, Abfrage3) gehören.

Du solltest nur darauf achten, dass die Namen der Parameter in den einzelnen Parameterabfragen sich dann auch unterscheiden.

Sinnvoll ist es übrigens auch, die Parameter dezidiert in die Abfrage in den SQL-Text reinzunehmen; also so was:

Statt: "SELECT * FROM Tabelle WHERE ID=[Parameter1]"

dies:

"PARAMETERS Parameter1, LONG;

SELECT * FROM Tabelle WHERE ID=[Parameter1]"



Das erspart der QueryEngine, sich die Parameter erst selbst per Analyse zu ermitteln.





Ciao, Sascha



geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: