Avatar billede JJ77 Juniormester
17. maj 2004 - 23:25 Der er 10 kommentarer og
1 løsning

Fritekstsøgning i accesdatabase

Jeg sidder med en lille database som indeholder nogle felter.. her skriver jeg kun nogle få af dem: kundenr, firmanavn og kontakt_fornavn...
Hvis jeg skal søge i den fra min Form.. med lidt fritekst.. hvordan gør jeg det... fatter det ikke rigtigt.. men er også lidt ny på området..
jeg kan sagtens bladre i alle filerne fra min Form osv...
har prøvet med at lave en button:

rivate Sub Command2_Click()
strSQL = "SELECT * FROM Historik WHERE firmanavn Like '*" & Text15.Text & "*'"
End Sub

min tekstboks ser således ud:

Private Sub Text15_Change()

End Sub

min mening er så at den skal hente den fil fra databasen hvor firmanavnet passer med det jeg skriver i "tekstboksen"...

istedet for at hente alle records som den jo bare gør nu.. hvor man bare kan bladre mellem dem alle..

Jeg bladrer i tekstfelterne i øjeblikket med:

Private Sub Data1_Validate(Action As Integer, Save As Integer)

End Sub


det lyder måske lidt mystisk... hmmm
Avatar billede tubber Juniormester
17. maj 2004 - 23:36 #1
Prøv at kigge på dette spg. der er måske noget at hente:
http://www.eksperten.dk/spm/410725

Hvad mener du med bladre i tekstfelterne ?
Avatar billede JJ77 Juniormester
17. maj 2004 - 23:52 #2
jeg har i min form nogle "Textboxe" som passer til felterne i min accesdatabase. dvs. at min database "Historik" har felterne "kundenr" og "firmanavn". altså har jeg to textboxe i min form. jeg kan også sagtens se data, men kun bare sådan fortløbende så jeg kun kan bladre i dem... gad godt at ku søge på et firmanavn, og så sku den vise det firmanavn jeg søgte på... og så vise det i mine textboxe...
Avatar billede JJ77 Juniormester
18. maj 2004 - 00:00 #3
Det ku også være cool, hvis man ku lave sådan en "Find" knap som åbnede en lille boks hvor man så ku vælge 'datafeldt' <> 'søgetekst'. det ku være liret.. men nok lidt overdrevet svært
Avatar billede tubber Juniormester
18. maj 2004 - 00:23 #4
oh.......

jeg ville smide en listbox ind, hvor du kan hente de forskellige forekomster ind i, f.eks. søger du på s så er der måske 3 styks, der giver du den et nyt index i din listbox der svare til et kundenummer, så når du trykker på en forekomst så vises det i dine textboxe........

du henter data ind i din listbox med:
strSQL = "SELECT * FROM Historik WHERE firmanavn Like '*" & Text15.Text & "*'"

If Not rs.EOF Then
    rs.MoveFirst
    Do While Not rs.EOF
        lstFirma.AddItem rs!dbFirma
        lstFirma.ItemData(lstNavn.NewIndex) = rs!dbKundenummer
        rs.MoveNext
    Loop
End If


Når du så laver en click på listboxen så:

rs.MoveFirst
Do While rs.EOF = False
    If rs!dbKundenummer = lstFirma.ItemData(lstFirma.ListIndex) Then
            txtFirma.Text = rs!dbFirma
            txtKundenummer.Text = rs!dbKundenummer
            txtLand.Text = rs!dbLand
            txtTelefonnummer.Text = rs!dbTelefonnummer
            txtMobilnummer.Text = rs!dbMobilnummer
            txtEmail.Text = rs!dbEmail
            txtHjemmeside.Text = rs!dbHjemmeside
            txtFoedselsdag.Text = rs!dbFoedselsdag
    End If
rs.MoveNext
Loop
Avatar billede tubber Juniormester
18. maj 2004 - 00:24 #5
Kan du specificere det der er lidt liret lidt mere hehe
Avatar billede JJ77 Juniormester
18. maj 2004 - 20:51 #6
hmmm... jeg er måske lidt dum.. hehe.. men ku ikke rigtigt finde ud af det..

men det jeg vil er at jeg starter min form.. altså med f5.... når jeg har startet den viser den altså lidt forkortet.. to textboxe.. 'kundenr' og 'firmanavn'... her henter den de data jeg har i min acces-database... jeg kan så bladre frem og tilbage mellem de records jeg så har oprettet... men hvis jeg nu havde 100 records i databasen ville det være smart hvis jeg ku søge på et firmanavn, og så sku den gå til det firmanavn jeg søgte på... og så vise det i de samme textbokse som jeg normalt bladrer i... jeg skal også kunne bladrer videre igen... hvis jeg nu havde nogle forskellige firmanavne i databasen... fx: aa og bb og cc og dd og ee... når jeg starter min form med f5 starter den med at vise dem i alfabetisk rækkefølge... det ku jo så være cool hvis jeg ville se firmaet ee's data... så ku jeg bare søge på "ee", og så hopper den direkte til firmaet ee... hmmmmm lyder måske lidt mystisk.. men jeg prøver da
Avatar billede JJ77 Juniormester
18. maj 2004 - 20:53 #7
Hej igen.. jeg bruger sådan en "Data1" til at bladre mellem mine data..
Avatar billede tubber Juniormester
18. maj 2004 - 21:32 #8
Hvis det kan du maile mig projektet og så prøver jeg at ilustrere det jeg mener :) husk db med og gerne zippet eller rar :)

tubber@krog-frandsen.dk

/Tubber
Avatar billede JJ77 Juniormester
19. maj 2004 - 00:49 #9
Hej Tubber... det er super cool det du har sendt mig.. det må jeg sige... men det er godt nok lidt mere avanceret at rode med.. he he..
gider du ikke lige sende et "svar" så du ka få lidt point.... og der er flere point på vej til dig hvis du gider at lave lidt flere funktioner og maile det til mig igen... bare sådan lidt med fx.. hvis jeg skal tilføje en ny, hvor den skal hente det højeste kundenr og lægge 1 til, så den nye der bliver oprettet får et nummer højere end det højeste der ligger i databasen.... ell.. fx bare bladre frem og tilbage ell. slette.. el hvad du nu lige kan finde på.....
Jeg er altså lidt grøn.. men det er bare så jeg kan få et lidt bedre overblik over hvordan det hænger sammen.... for det er helt sikkert en meget mere cool måde at lave det på.. sådan som du gør... lidt mere profff... ell.. 1000000 gange mere proff.
Avatar billede tubber Juniormester
19. maj 2004 - 04:25 #10
Jo kan jeg da det er her :)

og jo lidt kan jeg vel godt lave :)
Avatar billede JJ77 Juniormester
19. maj 2004 - 11:34 #11
Helt sikkert.. det glæder jeg mig til at se..
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester