Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

MS Access - ADO ODBC geeft geen records terug

Pagina: 1
Acties:

  • Morrey
  • Registratie: November 2005
  • Laatst online: 19-11 16:08
Beste mensen,

Ik wil graag in vba een records ophalen uit een mysql database. Met een passthrough query lukt het me wel, maar niet in de code. Kijk even mee als jullie willen:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset

Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset

With cn
    .Open "DSN=vips;"
End With

rs.ActiveConnection = cn
rs.LockType = adLockReadOnly
rs.CursorType = adOpenStatic

rs.Open ("select * from user")

rs.MoveFirst
MsgBox rs.RecordCount

rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing


De dsn connectie doet het, maar ik krijg -1 terug als aantal records, terwijl er toch echt 500 stuks instaan. Ik heb al allerlei smaakjes geprobeerd (zonder dsn, maar met de direct credentials), maar ik krijg hem niet aan de praat.

Thanks!

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

-1 records bestaat niet; maw dit wil alleen zeggen dat het aantal records (nog) niet is bepaald. Probeer maar eens door je recordset heen te lopen ;)

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


  • Witte
  • Registratie: Februari 2000
  • Laatst online: 15-10 13:46
Als de recordset leeg is, krijg je bij de .movefirst al een foutmelding.

Je kan records het best tellen op volgende manier:

code:
1
2
3
4
5
6
if rs.eof and rs.bof then
  aantal = 0
else
  if not rs.eof then rs.movelast
  aantal = rs.recordcount
end if

Houdoe