Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   TAdsQuery - Filter und Wilcard (https://www.delphipraxis.net/160340-tadsquery-filter-und-wilcard.html)

Mike_on_Tour 9. Mai 2011 12:38

AW: TAdsQuery - Filter und Wilcard
 
Hallo bwolf,

hier ein Auszug aus dem Quelltext von ADS:

* Note: The character '*' will be considered to be a wild
* card only if it is the last character in a string
* constant.

Der '*' funktioniert also nur am Ende.

Ich würde das entweder mit LIKE oder mit einem SQL-Skript versuchen.

Mike

Perlsau 9. Mai 2011 12:39

AW: TAdsQuery - Filter und Wilcard
 
Zitat:

Zitat von bwolf (Beitrag 1099689)
Zitat:

Zitat von Perlsau (Beitrag 1099688)
Zitat:

Zitat von bwolf (Beitrag 1099680)
Im Projekt test.exe ist eine Exception der Klasse EADSDatabaseError mit der Meldung 'qTest: Error 3106: Unsupported operator found in a record filter expression.' aufgetreten.

Setze den Filter doch einfach im SQL-Statement.

Auf die Idee bin ich natürlich auch schon gekommen, allerdings müsste ich dann a.) einiges umbauen und b.)würde ich gerne wissen wieso das nicht funktioniert ;)

Wenn es im SQL-Statement funktioniert und im Filter nicht, liegt das wohl daran, daß das Filter-Property deiner Komponente nicht alle SQL-Ausdrücke unterstützt.

Tyrolean 9. Mai 2011 13:10

AW: TAdsQuery - Filter und Wilcard
 
Zitat:

qTest.Filter := 'Nummer = ' + QuotedStr('*' + edTest.Text + '*');
qTest.Filter := QuotedSTr(edTest.Text) + ' $ nummer';
sollte funktionieren

bwolf 9. Mai 2011 13:16

AW: TAdsQuery - Filter und Wilcard
 
Hi Tyrolean,

das funktioniert tatsächlich, danke dir!
Kannst du mir noch erklären was das für eine Syntax ist? Hab ich bisher so nicht gesehen...:oops:

Tyrolean 9. Mai 2011 13:29

AW: TAdsQuery - Filter und Wilcard
 
Zitat:

Zitat von bwolf (Beitrag 1099707)
Hi Tyrolean,

das funktioniert tatsächlich, danke dir!
Kannst du mir noch erklären was das für eine Syntax ist? Hab ich bisher so nicht gesehen...:oops:

Das ist die Advantage Expression Engine-Syntax. Leider ist die nicht ident mit dem SQL. Es fehlt dafür genau die LIKE-Funktion. Wäre alles einfacher wenn auch beim Filter die normale SQL-Syntax funktionieren würde.

bwolf 9. Mai 2011 13:37

AW: TAdsQuery - Filter und Wilcard
 
Wieder was gelernt, thx :thumb:

joachimd 11. Mai 2011 09:01

AW: TAdsQuery - Filter und Wilcard
 
Zitat:

Zitat von Tyrolean (Beitrag 1099713)
Das ist die Advantage Expression Engine-Syntax.

genauer gesagt: die XBase-Syntax (Clipper, DBase, VO, Xbase++, Vfp usw). Auch wenn diese mit immer mehr Funktionen ausgebaut wird, bleibt die grundsätzliche Grammatik doch bestehen.

Tyrolean 11. Mai 2011 10:07

AW: TAdsQuery - Filter und Wilcard
 
Zitat:

Zitat von joachimd (Beitrag 1100120)
Zitat:

Zitat von Tyrolean (Beitrag 1099713)
Das ist die Advantage Expression Engine-Syntax.

genauer gesagt: die XBase-Syntax (Clipper, DBase, VO, Xbase++, Vfp usw). Auch wenn diese mit immer mehr Funktionen ausgebaut wird, bleibt die grundsätzliche Grammatik doch bestehen.

Da hast du natürlich recht. Ich meinte aber eher die wichtige Unterscheidung zwischen

Advantage SQL engine (LIKE möglich)
und
Advantage Expression Engine (LIKE nicht möglich)

Und in der Hilfe findet man damit auch schneller :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:14 Uhr.
Seite 2 von 2     12   

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