Hej alla. Är nybörjare med databaser och har ett problem. Du kan snabba upp frågan genom att specifisera vilka kolumner du ska hämta istället för att hämta alla med '*'. Inte för att jag är något proffs direkt men.. Hej.Söka i databas
Ställer en fråga som ser ut typ:
oRec.Source = "SELECT * FROM station where station_number like " & "'" & txtSeek.Text & "*'"
Och loopar igenom databasen som det här :
Do While Not oRec.EOF
List1.AddItem oRec.Fields("station_number")
List1.AddItem oRec.Fields("NAME")
List1.AddItem oRec.Fields("ADRESS")
List1.AddItem oRec.Fields("ATTENTION")
List1.AddItem ("-------------------------------")
oRec.MoveNext
iCounter = iCounter + 1
Loop
Jag tycker att det går långsamt.. Gör jag fel ????Sv: Söka i databas
Har du indexerat tabellerna? Det ger snabbare sökningar i utbyte mot att det tar något längre tid att spara/ändra data.
/JockeSv: Söka i databas
oRec.Source = "SELECT * FROM station where station_number like '" oRec.Source = oRec.Source+Trim$( txtSeek.Text)+ "*'"Sv: Söka i databas
I och med att du använder dig av like funktionen kan det inte gå snabbt. Varje databaspost måste kollas om den är ska med i träffbilden eller inte. Att indexera funkar inte heller så bra, även där måste varje post kontrolleras. Försök att köra utan like samt ha med en sökfunktion där du varnar för att den kan ta tid som du kör med like.
Stefan