Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Fehler beim Suchen (https://www.delphipraxis.net/186624-fehler-beim-suchen.html)

Rippo 17. Sep 2015 08:08

Datenbank: Firebird • Version: 2.5 • Zugriff über: TSQL

Fehler beim Suchen
 
Hallo :)

Ich habe mit folgendem Code eine Suche erstellt

Delphi-Quellcode:
                        //Funktion um zu Suchen
Function TfrmKundenstamm.Suchen(aSuchbegriff: string) : Boolean;
var aktSuchtext : string;
Begin
  aktSuchtext :='%'+Ansiuppercase(aSuchbegriff)+'%';

  DMMain.SDS_K.Close;
  DMMain.SDS_K.DataSet.CommandText := //Welche Felder sollen durchsucht werden
      ' Select * from KStamm where Upper(ks_Schlüsselnummer) or Upper(ks_name) or Upper(ks_email) or Upper(ks_ort) like ' + QuotedStr(aktSuchtext);

  DMMain.SDS_K.Open;
  //if (Not DMMain.SDS_K.IsEmpty) then
end;

Jetzt wenn ich suche, bekomme ich die 'Fehlermeldung' --> Token unknown - line1, column 57 or.


Was habe ich falsch gemacht?

Sir Rufo 17. Sep 2015 08:19

AW: Fehler beim Suchen
 
Such mir bitte alle Namen aus dem Telefonbuch, wo der Name in Grossbuchstaben.

Kannst du das rein formal betrachtet erledigen?

Eben, kann die Datenbank auch nicht ;)

Und Parameter sind auch immer gerne gesehene Gäste ...

baumina 17. Sep 2015 08:26

AW: Fehler beim Suchen
 
SQL-Code:
Select * 
  from KStamm
where ks_Schlüsselnummer containing :Suchbegriff
   or ks_name containing :Suchbegriff
   or ks_email containing :Suchbegriff
   or ks_ort containing :Suchbegriff

DeddyH 17. Sep 2015 09:55

AW: Fehler beim Suchen
 
Und rein formal (damit Firebird das auch versteht) müsste es lauten:
SQL-Code:
WHERE
  Feld1 LIKE Suchbegriff
OR
  Feld2 LIKE Suchbegriff
OR
  Feld3 LIKE Suchbegriff
--usw. usf.

p80286 17. Sep 2015 10:05

AW: Fehler beim Suchen
 
3x der selbe Parameter? (:Suchbegriff)
Ich hab irgendwie im Hinterkopf, das das Ärger gibt.
SQL-Code:
where feld1 like :Suchbegriff1
   or feld2 like :Suchbegriff2
   or feld3 like :Suchbegriff3
sollte auf jeden Fall gehen.

Gruß
K-H

mkinzler 17. Sep 2015 10:08

AW: Fehler beim Suchen
 
Und warum kein CONTAINING? Sollte schneller sein.

baumina 17. Sep 2015 10:12

AW: Fehler beim Suchen
 
Zitat:

Zitat von p80286 (Beitrag 1316068)
3x der selbe Parameter? (:Suchbegriff)
Ich hab irgendwie im Hinterkopf, das das Ärger gibt.

War glaub nur ein ADO-Problem.

p80286 17. Sep 2015 11:15

AW: Fehler beim Suchen
 
Ah ja

Gruß
K-H


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:14 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz