Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi SQL Abfrage SELECT: Ergebniss Fehler (https://www.delphipraxis.net/61059-sql-abfrage-select-ergebniss-fehler.html)

wlfmario 16. Jan 2006 15:45

Datenbank: Interbase • Zugriff über: IB

SQL Abfrage SELECT: Ergebniss Fehler
 
Hallo,

ich habe iene Interbase Datenbank mit einer Tabelle und folgenden Feldern:
  • FILMID
    TITEL
    ART
    MEDIUM
    MEDIUMANZ
Jetzt möchte ich eine abfrage basteln, die wenn der benutzer in einen Edit Feld etwas eingibt alles was der eingabe nah kommt.
Bsp. Der User gibs Haus 1 ein und es wird alles ausgegeben was mit haus oder 1 zu tun hat.
Jetzt habe ich schon mal eine SQL abfrage geschrieben die aber leider einen Fehler ausgibt -104 ????
Wie muß die SQL abfrage lauten das alle Felder in der Tabelle durchsucht werden ? Was habe ich im Code Falsch gemacht ?

Danke schon einmal für die Antworten.

Delphi-Quellcode:
if KDSuchGroup.ItemIndex = -1 then
  begin
  DM.IBFilme.Close;
  DM.IBFilme.SelectSQL.Text := 'SELECT * FROM FILM LIKE UPPER(' + QuotedStr(EditKSSuchen.Text) + ') ORDER BY FILMID';
  DM.IBFilme.Open;
  EditKSSuchen.Clear;

Ferber 16. Jan 2006 15:54

Re: SQL Abfrage SELECT: Ergebniss Fehler
 
So wird's wahrscheinlich geh.

SQL-Code:
'SELECT * FROM FILM WHERE TITEL LIKE UPPER(' + QuotedStr(EditKSSuchen.Text) + ') ORDER BY FILMID';

mkinzler 16. Jan 2006 15:57

Re: SQL Abfrage SELECT: Ergebniss Fehler
 
SAo muß es heißen:
SQL-Code:
'SELECT * FROM FILM WHERE TITEL LIKE UPPER(%' + QuotedStr(EditKSSuchen.Text) + '%)';
Alles was bei einer SQL-Abfrage zwischen den Prozentzeichen ist wird im Feld TITEL gesucht.

wlfmario 16. Jan 2006 16:06

Re: SQL Abfrage SELECT: Ergebniss Fehler
 
Danke Danke !

aber das ist nicht das was ich mein !
Jetzt sucht er ja alles in TITEL ! es sollen alle Felder wie (FILMID, TITEL, ART, MEDUM usw.) durchsucht werden.
Da liegt mein Problem.

alzaimar 16. Jan 2006 16:10

Re: SQL Abfrage SELECT: Ergebniss Fehler
 
Ns, dann bastle Dir ein SELECT, das die einzelnen Abfragen mit " OR " verknüpft:
SQL-Code:
select * from mytable where myField1 like '%Foo%' or myField2='%Foo%'

wlfmario 16. Jan 2006 16:13

Re: SQL Abfrage SELECT: Ergebniss Fehler
 
Danke !
Das klappt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:20 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-2025 by Thomas Breitkreuz