Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Datenbanksuche mit AdsTable (https://www.delphipraxis.net/48498-datenbanksuche-mit-adstable.html)

Grolle 26. Jun 2005 13:58

Datenbank: ADS local • Version: 7 • Zugriff über: Ads Kompos

Datenbanksuche mit AdsTable
 
Hallo!
Ich durchsuche mit
Delphi-Quellcode:
  ADSTable2.Locate('stadt',(Edit2.Text),[loCaseInsensitive,loPartialKey]);
eine Vorwahldatenbank. Wenn ich jetzt z. B. München eingebe
wird mir aber Münchenbernsdorf angezeigt. Kann man ohne großen Aufwand
ändern?
(Das ganze steht im onChange des EditFeldes)

kiar 26. Jun 2005 14:04

Re: Datenbanksuche mit AdsTable
 
hallo Grolle,

ich kenne die Ads DB zwar nicht, ist es aber nicht vorteilhafter mit SQL zu suchen?

ein einfaches
SQL-Code:
select Vorwahl from Tabelle
where Stadt = ' München'
brachte mir das gewünschte Ergebnis.

raik

Grolle 26. Jun 2005 14:16

Re: Datenbanksuche mit AdsTable
 
Dann müsste ich allerdings ADSQuery benutzen?
Damit habe ich noch nie gearbeitet :?

marabu 26. Jun 2005 14:17

Re: Datenbanksuche mit AdsTable
 
Dann lass doch einfach die Option loPartialKey weg.

marabu

Grolle 26. Jun 2005 14:25

Re: Datenbanksuche mit AdsTable
 
Das hatte ich auch schon getestet, aber es funktionierte nicht (vor allem, wenn man etwas
2x hintereinander eingegeben hat).
Ich möchte ja auch, dass die Suche sich mit jeder Eingabe ändert. Werde ich wohl nicht
um die Query herumkommen, was?

marabu 26. Jun 2005 16:08

Re: Datenbanksuche mit AdsTable
 
Hallo Grolle,

ich hatte nicht genau genug gelesen. Was du da machst ist eine Schnellpositionierung innerhalb einer Lookup-Tabelle - oder nicht?

Wenn die Tabelle einen Index auf den Ortsnamen hat, dann sollte bei einer Präfixsuche nach 'München' auch 'München' als oberster Eintrag erscheinen. Eventuell muss der Index mal regeneriert werden?

marabu

joachimd 27. Jun 2005 13:17

Re: Datenbanksuche mit AdsTable
 
Zitat:

Zitat von marabu
Wenn die Tabelle einen Index auf den Ortsnamen hat, dann sollte bei einer Präfixsuche nach 'München' auch 'München' als oberster Eintrag erscheinen. Eventuell muss der Index mal regeneriert werden?

oder wahrscheinlich nur aktiviert (angelegt)? Ein Locate setzt keinen aktiven Index voraus.

Grolle 30. Jun 2005 13:07

Re: Datenbanksuche mit AdsTable
 
Hallo!
Nein auf der Tabelle liegt eigentlich kein Index.
Muss ich für diese Suchfunktion einen erstellen?

marabu 30. Jun 2005 13:11

Re: Datenbanksuche mit AdsTable
 
Zitat:

Das ganze steht im onChange des EditFeldes
Wäre schon besser. Die Positionierung mit Locate() ohne Index wird bestimmt länger dauern als die Pause zwischen zwei Buchstabeneingaben im Edit-Feld...

marabu

Grolle 30. Jun 2005 13:32

Re: Datenbanksuche mit AdsTable
 
Habe jetzt einen Index erstellt. Das Grundproblem,
was ich oben angesprochen habe bleibt. Werd jetzt
mal AdsQuery testen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:44 Uhr.
Seite 1 von 2  1 2      

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 by Thomas Breitkreuz