Delphi-PRAXiS
Seite 1 von 6  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi TQuery variabel (https://www.delphipraxis.net/146202-tquery-variabel.html)

fl63 15. Jan 2010 13:32

Datenbank: Paradox und BDE • Zugriff über: SQL

TQuery variabel
 
Hallo!

Ich beschäftige mich seit kurzem mit SQL. Meine erste Abfrage

Delphi-Quellcode:
 with Query1 do
  begin
    Active:=False;
    SQL.Clear;
    SQL.Add('Select * from gesamt3 where feld001 = "AACHEN" ');
    Active:=True;
  end;
funktioniert.

Nun möchte ich "AACHEN" variabel machen


Delphi-Quellcode:
 with Query1 do
  begin
    Active:=False;
    SQL.Clear;
    SQL.Add('Select * from gesamt3 where feld001 = Edit1.text ');
    Active:=True;
  end;
das funktioniert nicht.

Wo ist mein Fehler? und wie mache ich sowas richtig.

ATSV 15. Jan 2010 13:43

Re: TQuery variabel
 
Hallo

So dürfte das ganze Funktionieren
Delphi-Quellcode:
with Query1 do
  begin
    Active:=False;
    SQL.Clear;
    SQL.Add('Select * from gesamt3 where feld001 = :text');
    ParamByName('text').asString := Edit1.Text;
    Active:=True;
  end;

fl63 15. Jan 2010 13:51

Re: TQuery variabel
 
Vielen Dank für die schnelle Hilfe.

Wie sieht dann eigentlich die Syntax aus mit der ich zB. AA?HEN abfragen kann? habe gelesen mit like aber die genaue Syntax stand nicht dabei.

Jens Hartmann 15. Jan 2010 13:59

Re: TQuery variabel
 
Hallo fl63,

das mit Like ist schon ganz OK.
SQL-Code:
    SQL.Add('Select * from gesamt3 where feld001 Like 'AA_HEN');
Gruß Jens

Bernhard Geyer 15. Jan 2010 14:05

Re: TQuery variabel
 
Wildcards im SQL:

Für ein Zeichen "_"
Für beliebige Anzahl von Zeichen "%"

fl63 15. Jan 2010 14:12

Re: TQuery variabel
 
Dann sieht also der vollständige Text so aus:

Delphi-Quellcode:
with Query1 do
  begin
    Active:=False;
    SQL.Clear;
    SQL.Add('Select * from gesamt3 where feld001 like = :text');
    ParamByName('text').asString := Edit1.Text;
    Active:=True;
  end;
das heißt der Platzhalter wäre in Jens Fall ein ' _ ' . Kann man den andere Platzhalter so ohne weiters einsetzen oder gibt es da Vorschriften.

Ich merke gerade das diese Frage bereits erklärt wird.

In meinem Edit1.Text hätte ich gerne ein ' # ' als Platzhalter. Das ist wohl nicht möglich?

Sherlock 15. Jan 2010 14:14

Re: TQuery variabel
 
Alles ist möglich. Ersetzte dann einfach auf dem Weg zum SQL-Statement das '#' durch das '_' ;)

Sherlock

fl63 15. Jan 2010 14:20

Re: TQuery variabel
 
@ sherlock

Was heißen soll...??

Sherlock 15. Jan 2010 14:22

Re: TQuery variabel
 
Frage: Wie ersetze ich Zeichen in einem String?
Suche nach der Lösung erfolgt im allgemeinen auf Englisch. also Frage übersetzen:
How can I replace characters in a string?
Ergebnis:
Delphi-Referenz durchsuchenstringreplace

Sherlock

fl63 15. Jan 2010 14:25

Re: TQuery variabel
 
Meine Frage bezog sich auf SQL Statement.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:15 Uhr.
Seite 1 von 6  1 23     Letzte »    

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