Einzelnen Beitrag anzeigen

nahpets
(Gast)

n/a Beiträge
 
#11

Re: [SQL] Select mit dynamischer Parameteranzahl

  Alt 20. Feb 2009, 11:41
Hallo,
Zitat von Jürgen Thomas:
Hallo,

von dem Vorgehen von nahpets #6 möchte ich abraten, weil dann der Vorteil von Parametern nicht genutzt werden kann. Alternativen werden in FIBPlus + IN () - ParamByName(..).As.. besprochen.

Vielleicht ist etwas davon eine sinnvolle Anregung.

Gruß Jürgen

Meine Güte, seid Ihr schnell.
jain, natürlich geht bei meiner Methode der Vorteil von Parametern flöten, aber mir ist keine Möglichkeit bekannt, ein SQL mit Parametern zu versehen, von denen ich zu Entwicklungszeit die Menge der Parameter nicht kenne.
Natürlich könnte man hergehen und das SQL mit 10 Parametern versehen, diese, soweit Werte bekannt sind, entsprechend füllen und die verbleibenden Parametern mit solchen Werten versehen, die garantiert zu keinem Ergebnis führen (Frage, wie muss ein Namensparameter aussehen, damit der Name garantiert nicht gefunden wird?).
Und was ist, wenn der 11. Parameter benötigt wird?

Man könnte zur Laufzeit auch das SQL erweitern um die benötigte Anzahl vonor Name like ':Parameter1' ... or Name like ':ParameterN' und anschließend diese Parameter mit Werten versehen.
Man hat hier zwei Möglichkeiten: Ein parametrisiertes, festes SQL, dass ggfls. nicht ausreicht oder mit Dummywerten versehen wird oder man baut es zur Laufzeit entsprechend den Anforderungen zusammen.

Wenn ich die auf der verlinkten Seite gezeigte Verfahrensweise richtig interpretiere, wird dort letztlich ein Parameter gefüllt, der eine mehr oder weniger große Teilmenge der Wherebedingung enthält. Meine Post #6 und #9 führen letztlich zu genau diesem Ergebnis.
  Mit Zitat antworten Zitat