Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VBA: VB ja Access2000

Jokkeri [01.02.2003 20:33:49]

#

Mahtaakohan löytyä seuraavan ongelmaan ratkaisua?

Access2000:ssa on tuoterekisteri taulu ja tuotenumero kenttä. Tuotenumerot joissa on kaksi väliviivaa esim. 1111-2222-3333 seuraava koodi ei löydä, mutta numeron 1111-22223333 löytää. Ilmeisesti näillä väliviivoilla on merkitystä kun kyselyssä käytetään like operaattoria????

strHaku on haettavan tuotenumeron alku esim.1111-2222-

With rsTuotteet
    .Source = "select tuoteno,nimike from tuoterekisteri where tuotenumero like '" & strHaku & "%' order by tuoteno;"
    .ActiveConnection = connOmat
    .CursorLocation = adUseClient
    .CursorType = adOpenDynamic
    .LockType = adLockOptimistic
    .Open
End With

Kyseinen haku toimiii kyllä Access 97:lla.

Antti [03.02.2003 11:12:30]

#

Access 2000:n jokerimerkki on on * - ei %...
Esim...WHERE Lastname LIKE 'D*'...

Jäi hieman epäselväksi käytätkö VBA:ta vai VB:tä eli onko kyseessä Accessilla toteutettu tietokanta sovellus vai VB:llä toteutettu tietokantasovellus, joka käyttää Access tietokantaa?

Mitä kantayhteyttä käytät. Kantayhteyksien rajapinnoilla on eroja. Eli onko kyseessä ADO, ODBC MSJet...

Teme [03.02.2003 18:05:42]

#

Ja vielä lisäksi ne kaikki komennot kuuluu kirjoittaa ISOILLA KIRJAIMILLA, näin:

.Source = "SELECT tuoteno, nimike FROM tuoterekisteri WHERE tuotenumero LIKE '%" & strHaku & "%' ORDER BY tuoteno"

Toimi ainakin mun joissain tietokantaohjelmissa...

Jokkeri [03.02.2003 20:35:41]

#

Mahtavaa nyt rupes toimimaan!
Minulta puuttui tuo ensimmäinen % merkki LIKE operaattorin jälkeen. Niin käytän VB 6.0 SP5 ja ADO:a joka käyttää Access tietokantaa.

Kiitokset!!!

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta