/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
RecordCount hvordan anvendes denne funktio~
Fra : Peter Kammann


Dato : 01-06-01 11:06

Jeg har en database hvor jeg gerne vil tælle antallet af poster i databasen.
Jeg har prøvet følgende

"Dim intDataNumber
Do While Not objRs.EOF
intDataNumber = objRs.RecordCount
objRs.MoveNext
Loop
Number of Records: <%=intDataNumber%>"

Resultatet bliver altid ligemeget hvad jeg prøver = -1
Hvad kan jeg gøre anderledes eller hvad gør jeg forkert.

Hjælp mig venligst.

--
Med venlig hilsen

Peter Kammann
---------------------------------
peter@kammann.dk
www.kammann.dk
My ICQ #30928689
---------------------------------



 
 
Jakob Andersen (01-06-2001)
Kommentar
Fra : Jakob Andersen


Dato : 01-06-01 12:04

"Peter Kammann" <peter@kammann.dk> wrote in message
news:3b176aad$0$4212$ba624c82@nntp01.dk.telia.net...
> Resultatet bliver altid ligemeget hvad jeg prøver = -1
> Hvad kan jeg gøre anderledes eller hvad gør jeg forkert.

Recordcount propertien er ikke tilgængeæig med den defaultcursor
(forward-only cursor). Derfor bliver du nødt til når du åbner dit recordset
at specificere hvliken Curor type du skal bruge.

Men selvom det (nogen gange)betyder to sql forespørgsler tror jeg altså at
det er hurtigere at tælle posterne sådan her vha. SQLs Count() funktion:

Set objRS = objConn.Execute("Select count(feltnavn) FROM tabelnavn")
'Husk evt. WHERE statements i ovenstående SQL
Response.write "Number of Records: " & objRS(0)
objRS.Close
Set objRS = Nothing


--
Jakob Andersen
FAQ for webdesign gruppen på
<http://www.usenet.dk/oss/dk.edb.internet.webdesign>
"Det er rart at være vigtig, men det er vigtigere at være rar "



Peter Lykkegaard (01-06-2001)
Kommentar
Fra : Peter Lykkegaard


Dato : 01-06-01 13:54


"Jakob Andersen" <jakob@andersen.as> wrote in message
news:9f7t2k$771$1@sunsite.dk...
>
> Men selvom det (nogen gange)betyder to sql forespørgsler tror jeg altså at
> det er hurtigere at tælle posterne sådan her vha. SQLs Count() funktion:
>
Hvorfor i alverden skulle det betyde to sql forespørgsler?

mvh/Peter Lykkegaard



Jakob Andersen (01-06-2001)
Kommentar
Fra : Jakob Andersen


Dato : 01-06-01 14:17

"Peter Lykkegaard" <polonline@hot.mail.com> wrote in message
news:0bMR6.96$Gy5.8356@news.get2net.dk...
> Hvorfor i alverden skulle det betyde to sql forespørgsler?

Okay, måske lidt dårligt formuleret.

Forstil dig at du skal bruge antallet af poster til at inddele dit resultat
på en bestemt måde. I denne situation bliver du først nød til at tælle
posterne med Count() og derefter lave dit "rigtige udræk" istedet for at du
bare laver dit rigtige udræk men en "non-forward-only" cursor med det samme
og tæller posterne vha. RecordCount.

--
Jakob Andersen
FAQ for webdesign gruppen på
<http://www.usenet.dk/oss/dk.edb.internet.webdesign>
"Det er rart at være vigtig, men det er vigtigere at være rar "



Lauritz Jensen (01-06-2001)
Kommentar
Fra : Lauritz Jensen


Dato : 01-06-01 14:49

Peter Lykkegaard wrote:
>
> "Jakob Andersen" <jakob@andersen.as> wrote in message
> news:9f7t2k$771$1@sunsite.dk...
> >
> > Men selvom det (nogen gange)betyder to sql forespørgsler tror jeg altså at
> > det er hurtigere at tælle posterne sådan her vha. SQLs Count() funktion:
> >
> Hvorfor i alverden skulle det betyde to sql forespørgsler?

Fordi man tit først finder antallet og derefter viser posterne. Men i
det tilfælde er det måske en ide at benytte GetRows (men dette kan jo
kræve en del hukommelse, så count-selecten er nok det smarteste).

--
Lauritz

Peter Lykkegaard (01-06-2001)
Kommentar
Fra : Peter Lykkegaard


Dato : 01-06-01 15:53


"Lauritz Jensen" <lauritz2@hotmail.com> wrote in message
news:3B179D64.89888048@hotmail.com...
> Peter Lykkegaard wrote:
> >
> > "Jakob Andersen" <jakob@andersen.as> wrote in message
> > news:9f7t2k$771$1@sunsite.dk...
> > >
> > > Men selvom det (nogen gange)betyder to sql forespørgsler tror jeg
altså at
> > > det er hurtigere at tælle posterne sådan her vha. SQLs Count()
funktion:
> > >
> > Hvorfor i alverden skulle det betyde to sql forespørgsler?
>
> Fordi man tit først finder antallet og derefter viser posterne. Men i
> det tilfælde er det måske en ide at benytte GetRows (men dette kan jo
> kræve en del hukommelse, så count-selecten er nok det smarteste).
>
Hmm, nu er jeg mest vant til MSSQL, men alligevel

Man kunne hente Count i samme forespørgsel
fx
SELECT ID, Data1, Data2, (Select Count(ID) From Table1) As Antalposter
FROM Table1; - Testet i Acc2K
Muligvis giver dette performance problemer i Access?
Jeg bruger det normalt til at hente antal poster i underliggende tabeller
med forsk kriterier (fx status)

Eller endnu bedre bruge det lidt tungere recordset med en valid RecordCount
property
Imho er der ikke så megen grund til at lave to roundtrips til databasen

På MSSQL kan jeg hente så mange recordsets jeg vil på én gang, men det er jo
en anden snak

mvh/Peter Lykkegaard



Jakob Andersen (01-06-2001)
Kommentar
Fra : Jakob Andersen


Dato : 01-06-01 15:49

"Peter Lykkegaard" <polonline@hot.mail.com> wrote in message
news:tWNR6.167$Gy5.9988@news.get2net.dk...
> Hmm, nu er jeg mest vant til MSSQL, men alligevel

Ditto men det er de fleste jo ikke så heldige og ha'

> Man kunne hente Count i samme forespørgsel
> fx
> SELECT ID, Data1, Data2, (Select Count(ID) From Table1) As Antalposter
> FROM Table1; - Testet i Acc2K

Vil sandsynligvis ikke virke på f.eks. en mySQL

> Eller endnu bedre bruge det lidt tungere recordset med en valid
RecordCount
> property
> Imho er der ikke så megen grund til at lave to roundtrips til databasen


Det er det der er spørgsmålet, er det hurtigst at have to forespørgsler en
Count og et resultat end det er at bruge RecordCount? Jeg tror det er
hurtigst med Count()

> På MSSQL kan jeg hente så mange recordsets jeg vil på én gang, men det er
jo
> en anden snak

Nej, det er ikke en anden snak deet er Guf.

--
Jakob Andersen
FAQ for webdesign gruppen på
<http://www.usenet.dk/oss/dk.edb.internet.webdesign>
"Det er rart at være vigtig, men det er vigtigere at være rar "



Lauritz Jensen (01-06-2001)
Kommentar
Fra : Lauritz Jensen


Dato : 01-06-01 15:56

Peter Lykkegaard wrote:
>
> Man kunne hente Count i samme forespørgsel
> fx
> SELECT ID, Data1, Data2, (Select Count(ID) From Table1) As Antalposter
> FROM Table1; - Testet i Acc2K
> Muligvis giver dette performance problemer i Access?

Så beder du databasen om at lave samme forspørgsel n gange. Det er
muligt at den kan optimerer sig ud af det, men det ville jeg nu ikke gå
ud fra uden at have testet det.

> Jeg bruger det normalt til at hente antal poster i underliggende
> tabeller med forsk kriterier (fx status)

Det er et helt andet problem (hvor den sql du har angivet ovenfor er
ganske brugbar).

> Imho er der ikke så megen grund til at lave to roundtrips til databasen

Den eneste begrundelse skulle være, at det var hurtigere (jeg har ikke
testet).

--
Lauritz

Peter Lykkegaard (03-06-2001)
Kommentar
Fra : Peter Lykkegaard


Dato : 03-06-01 09:34


"Lauritz Jensen" <lauritz2@hotmail.com> wrote in message
news:3B17AD0C.279C1E15@hotmail.com...
> Peter Lykkegaard wrote:
> >
> > Jeg bruger det normalt til at hente antal poster i underliggende
> > tabeller med forsk kriterier (fx status)
>
> Det er et helt andet problem (hvor den sql du har angivet ovenfor er
> ganske brugbar).
>
Njahh, jeg blev sgu også lidt usikker på den, men besluttede at skrive det
alligevel
Det kunne være at det kunne føde nogle ideer

mvh/Peter Lykkegaard



Søg
Reklame
Statistik
Spørgsmål : 177557
Tips : 31968
Nyheder : 719565
Indlæg : 6408872
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste