Avatar billede -anders- Juniormester
30. december 2004 - 14:22 Der er 14 kommentarer og
1 løsning

Problemer Kriterier i SQL string

Hej Eksperter
Nedenstående kode skulle gerne fylde data i min liste, men den viser ikke noget, og der kommer heller ikke fejl mystisk, nogen der et bud på det

mvh Anders.

Koden:
Function FindTitel()
Form_frmbilleder!lstallebilleder.ListItems.Clear
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim itmX As ListItem
 
Set rs = New ADODB.Recordset
With rs
Set .ActiveConnection = CurrentProject.Connection
.Open "Select * From fsoversigt where [Titel] like '*" & Form_frmfind!txttitel & "*'", , , adLockOptimistic
Do Until .EOF
Set itmX = Form_frmbilleder!lstallebilleder.ListItems.Add(, , rs!BilledID)
itmX.SubItems(1) = rs!Titel
itmX.SubItems(2) = rs!Gruppe
.MoveNext
Loop
End With
rs.Close
DoCmd.Close acForm, "frmfind"
End Function
Avatar billede fdata Forsker
30. december 2004 - 17:03 #1
Hurtige skud fra hoften:
- Er Form_frmfind åben, når koden kører?
- Har du checket, om rs.eof er True?
Avatar billede fdata Forsker
30. december 2004 - 17:05 #2
- Har du checket, om rs.eof er True?
.... altså inden Do
Avatar billede -anders- Juniormester
31. december 2004 - 01:39 #3
Hej fdata, undskyld den lange svartid, måtte løbe over hals og hoved, og er først i skrivende stund kommet hjem. Ja formen frmfind er åbn når koden køre og rs.EOF er true inden Do delen. Jeg forstår det ikke, det burde køre. Nedenstående virker hvis jeg spørger på en esakt værdi (tal)

Kode:
Function FindGruppe()
Form_frmbilleder!lstallebilleder.ListItems.Clear
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim itmX As ListItem
 
Set rs = New ADODB.Recordset
With rs
Set .ActiveConnection = CurrentProject.Connection
.Open "Select * From fsoversigt where [GruppeID] Like " & Form_frmfind!cbogruppe, , , adLockOptimistic
Do Until .EOF
Set itmX = Form_frmbilleder!lstallebilleder.ListItems.Add(, , rs!BilledID)
itmX.SubItems(1) = rs!Titel
itmX.SubItems(2) = rs!Gruppe
.MoveNext
Loop
End With
rs.Close
DoCmd.Close acForm, "frmfind"
End Function
Avatar billede terry Ekspert
01. januar 2005 - 12:41 #4
Happy New Yeat to you both!
aandersen>I suggest that you have a variable (string) to hold your SQL then its easier to debug the exact contents of what you are opening the recordset with. You can also copy this to a query to see what result you get there.

Dim sSQL as string
sSQL = "Select * From fsoversigt where [Titel] like '*" & Form_frmfind!txttitel & "*'"
.Open sSQL, , , adLockOptimistic


In the debug window (Ctrl+G) you can see the contents of sSQL and also copy it to a query

?sSQL
Avatar billede -anders- Juniormester
01. januar 2005 - 13:16 #5
Hej terry, godt nytår til dig også, jeg har prøvet dit forslag af, men samme resultat, der returneres ingen poster, hvis jeg køre koden op mod en standardliste virker det fint måske kan '*" & ikke  bruges i et recordset.
Avatar billede terry Ekspert
01. januar 2005 - 13:28 #6
Is it possible for you to send me your dB?
eksperten@NOSPAMsanthell.dk
remove NOSPAM
Avatar billede -anders- Juniormester
01. januar 2005 - 13:31 #7
Ja, det kan jeg sagtens, db kræver registrering af MSCOMCTL.ocx, jeg sender den om 5 min.
Avatar billede terry Ekspert
01. januar 2005 - 13:33 #8
OK
Avatar billede -anders- Juniormester
01. januar 2005 - 13:39 #9
db sendt
Avatar billede terry Ekspert
01. januar 2005 - 14:07 #10
sSQL = "Select * From fsoversigt where [Titel] LIKE '%" & Form_frmfind!txttitel & "%'"
Avatar billede -anders- Juniormester
01. januar 2005 - 14:09 #11
Hej terry, det virker perfekt. mange tak for din hurtige hjælp.
Avatar billede -anders- Juniormester
01. januar 2005 - 14:10 #12
Det bare perfekt, points er sendt til dig :o), men hvad er engelig forskellen % og '*"
Avatar billede terry Ekspert
01. januar 2005 - 14:16 #13
I am not 100% sure, but I think its because you are using an ADO recordset. In Access/DAO the standard wildcard is a * but in ADO its a %
Avatar billede -anders- Juniormester
01. januar 2005 - 14:21 #14
Tror du har ret, det er det eneste der giver mening her, endnu engang mange tak for din hurtige hjælp, så i dag lærte jeg igen noget nyt :o)

Mange nytårshilsner
Anders.

PS: db,en er en database til registrering af billeder, hvis du syntes om designet er du naturligvis velkommen til at benytte den som du har lyst :o)
Avatar billede terry Ekspert
01. januar 2005 - 14:32 #15
Thanks Anders, og rigtig godt nytår til dig også
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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