/ Forside / Teknologi / Udvikling / Delphi/Pascal / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Delphi/Pascal
#NavnPoint
oldwiking 603
jrossing 525
rpje 520
EXTERMINA.. 500
gandalf 460
gubi 270
DJ_Puden 250
PARKENSS 230
technet 210
10  jdjespers.. 200
Nu vi snakker filter på DB/Query
Fra : Ulrik Vadstrup


Dato : 21-02-01 12:55

Jeg har 4 edit felter, som alle skal pege på hver sin record

F.eks

Navn - String
EfterNavn - String
PostNr - Integer
Tlf - Integer

Jeg skulle nu gerne have mit filter til at ændre sig efter hvad der står i
felterne, så står der

* * * *
Så vælges alle poster


Ole* * * *
Så tager den alle der hedder Ole

Ole* * * 96*
Så tager den alle der hedder Ole med telefon numre startende med 96

*Hansen * * * *
Så tager den alle der hedder Hansen til efternavn

Jeg har rodet lidt i hjælpen - der står ikke meget, og forsøgt mig lidt
selv, men jeg har 3 væsentlige problemer.

Hvad gør jeg der hvor mit felt er et Tal/integer

Hvorfor vælger den ikke ingen ved Ole* * * *

Hvorfor finder den ingen ved *Hansen * * * *

Jeg laver en OnKeyPressed og kigger på VK_Return i hver Edit boks, laver så
en samlet string af alle editbokse og sætter i qry.Filter

Jeg har måske ikke forstået filter rigtigt - måske jeg skal gå anderledes
frem, nogen der vil give et eksempel ?

Med venlig hilsen

Ulrik Vadstrup



 
 
Nicolai Lang (21-02-2001)
Kommentar
Fra : Nicolai Lang


Dato : 21-02-01 15:40

On Wed, 21 Feb 2001 12:54:41 +0100, "Ulrik Vadstrup"
<vadstrup@post12.tele.dk> wrote:

>Jeg har 4 edit felter, som alle skal pege på hver sin record

>Jeg skulle nu gerne have mit filter til at ændre sig efter hvad der står i
>felterne, så står der

>* * * *
>Så vælges alle poster
>
>
>Ole* * * *
>Så tager den alle der hedder Ole

Den rette måde, er at ændre i SQL'ens WHERE del og så lukke/åbne
queryen. Det er sådan jeg normalt laver den slags.

På den måde så lader du serveren om det hårde arbejde med at finde ud
af hvad der skal filtreres, og du undgår at sende alt for mange data
over netværket. (Server side filter)-

Jeg har vel erfterhånden lavet en 25-30 DBGrids med den form for
filtrering.

At benytte filter på en TQuery vil du fortryde når der en dag er
kommet mange data i tabellen.

- Nicolai
--
Custom development of Novell & GroupWise extensions
Need overview of your employees calendar at once?
See http://datanet.bcp.dk/busywise/

Ulrik Vadstrup (21-02-2001)
Kommentar
Fra : Ulrik Vadstrup


Dato : 21-02-01 17:53

> Den rette måde, er at ændre i SQL'ens WHERE del og så lukke/åbne
> queryen. Det er sådan jeg normalt laver den slags.
>
<SNIP>

Ja, det er også normalt det jeg gør - men i dette tilfælde er det ikke sådan
ligetil - og det vil alt andet lige være nemmere, end at skulle til at kode
LIKE % den ene og anden vej, Kontrollere hvor * står, og udskifte det med
LIKE osv osv.......Er du sikker på det tager længere tid at filtrere på en
allerede selectet DB, end at lave en komplet ny select, med en masse Where
statements ?

Jeg ønsker altså stadig at vide hvordan jeg bruger filteret, også i det
tilfælde at jeg engang skulle bruge det på en table...

Eller tak for tippet

Ulrik



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste