Avatar billede Kim Neesgaard Seniormester
08. september 2001 - 10:12 Der er 3 kommentarer og
1 løsning

RecordCount på et recordset

Efter at have åbnet et recordset i Access 2000 på følgende måde:

Dim rstGrunddata As ADODB.Recordset
Set rstGrunddata = New ADODB.Recordset
rstGrunddata.Open \"x\", CurrentProject.Connection, adOpenDynamic, adLockOptimistic

giver x.recordcount altid resultatet \'-1\' uanset indholdet i x - hvorfor vises ikke det faktiske antal records?
Avatar billede nih Novice
08. september 2001 - 10:23 #1
Prøv at \'move\' lidt rundt i recordsettet først.

rstGrunddata.movelast
rstGrunddata.count

Når man åbner et recordset adOpenDynamic, er det jo for at spare på Access\'s resourcer, og det gør at Access ikke kender antallet af records før der bliver arbejdet med recordsetttet.

Det er ihvertfald forklaringen i DAO recordset.

Niels
Avatar billede Kim Neesgaard Seniormester
08. september 2001 - 11:10 #2
Selvom jeg bruger movelast og movefirst før recordcount blive den ved med at returnere \'-1\'??
08. september 2001 - 23:31 #3
Hej Kim,

Når man benytter ADO, er det ikke længere nødvendigt at lave en .MoveLast før en .Recordcount.
Men i dette tilfælde tror jeg at, du blot skal ændre din cursortype til adOpenKeyset i stedet for adOpenDynamic. adOpenDynamic understøtter nemlig ikke .Recordcount.
adOpenKeyset er også hurtigere at arbejde med. Du skal blot være opmærksom på at poster slettet eller oprettet af andre brugere ikke bliver registreret automatisk med adOpenKeyset. Dertil skal du opdatere recordsettet manuelt.

mvh
Thomas
www.makeiteasy.dk
Avatar billede Kim Neesgaard Seniormester
09. september 2001 - 11:06 #4
Så virker det smukt!!!
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