Also bei
mySQL konnte man den Suchsting auch als String angeben, selbst wenn es sich um 'ne Zahl im
DB-Feld handelte.
Demnach würde ich es also in etwa so machen:
Delphi-Quellcode:
SuchString := '';
S := Trim(Edit1.Text);
If S <> '' Then Begin
If SuchString <> '' Then SuchString := SuchString + ' AND ';
If Pos('*', S) = 0 Then SuchString := SuchString + ''FELD1="' + S + '"'
Else SuchString := SuchString + 'FELD1 LIKE "' + S + '"';
End;
If SuchString <> '' Then Begin
SuchString := '... WHERE ' + SuchString;
{suchen}
End;
Der mittlere Teil würde dann für jedes Edit-Feld einmal vorhanden sein.
Und wenn auch gesucht werden soll, falls nirgends was ordentliches eingegeben wurde, dann für den letzten Abschitt eines der Folgenden:
Delphi-Quellcode:
If SuchString = '' Then SuchString := '... WHERE 1'
Else SuchString := '... WHERE ' + SuchString;
{suchen}
Delphi-Quellcode:
If SuchString = '' Then SuchString := '1';
SuchString := '... WHERE ' + SuchString;
{suchen}
PS: ich hab jetzt allerdings nicht prüfen lassen, ob z.B. schädlicher Code in den Eingabefeldern steht, ebenfalls werden noch keine zeichen maskiert, welche eventuell den
SQL-Code stören könnten.