![]() |
Datenbank: Firebird • Version: 2 • Zugriff über: FibPlus
Query Parameter zuordnen
Hallo zusammen,
ich habe einige Forms die mit Eingabefeldern ausgefüllt sind. Durch drücken auf speichern, liest eine Routine die Komponenten und holt sich verschiedene Werte heraus. Baut daraus einen Insertbefehl und setzt diesen ab. Jetzt möchte ich das gerne über Parameter steuern. Jetzt mein Frage: Der SQL mit den Parametern existiert noch nicht, dieser existiert erst nach dem Routinendurchlauf. Somit kann ich die Parameter nicht direkt zuordnen. Ist es besser die Routine 2 mal laufen zu lassen, oder eine Funktion zu schreiben, die zur Laufzeit neue Felder+Parameter dem SQL hinzufügt? Oder gibt es ganz andere Lösungsansätze? Danke + Gruß Eppos |
AW: Query Parameter zuordnen
Wie meinst du das genau? Warum existieren die Parameter erst nach dem Durchlauf?
|
AW: Query Parameter zuordnen
In der Routine werden durch ComponentCount bestimmte Komponenten ermittelt, diese besitzen den Feldnamen.
Es werden also alle Feldnamen dadurch ermittelt und zusammen gesetzt damit diese ein SQL geben. |
AW: Query Parameter zuordnen
Wenn möglich würde ich dann eine Abfrage mit allen Feldern entwerfen und die Parameter für nicht benötigten Felder mit NULL belegen.
|
AW: Query Parameter zuordnen
Gute Idee, daran habe ich noch gar nicht gedacht. Aber wie bekomme ich die unbelegten Parameter heraus?
|
AW: Query Parameter zuordnen
Es sollte reichen zuerst alle mit NULL zu belegen
|
AW: Query Parameter zuordnen
Aber wenn Werte bereits zugeordnet sind, dann geht doch kein PramByName mehr oder?
|
AW: Query Parameter zuordnen
Doch, warum nicht?
|
AW: Query Parameter zuordnen
Wenn das ginge, dann könnte ich doch auch in der Routine den SQL Feld für Feld erweitern ?!?
Edit: Und die Parameter bereits zuordnen obwohl das Feld im SQL "noch" nicht gibt... oder? |
AW: Query Parameter zuordnen
Dann hättest du aber nicht die Vortiele der Parametrisierung
-automatische Anpassung an Typen -prepared Statements ... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:14 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz