---
title: "Do until Rs.Eof eller Do while not Rs.Eof?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/86633-do-until-rs-eof-eller-do-while-not-rs-eof"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "pRob3"
published: "2003-09-22T11:33:45.000Z"
updated: "2003-09-22T13:18:32.000Z"
replies: 9
views: 458
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/86633-do-until-rs-eof-eller-do-while-not-rs-eof"
---

# Do until Rs.Eof eller Do while not Rs.Eof?

## #1 — pRob3, 2003-09-22T11:33Z

Do until Rs.Eof  eller Do while not Rs.Eof vilket är det bästa för servern/snabbast?

Permalänk: https://www.webforum.nu/p/86633

## #2 — Calevan, 2003-09-22T11:35Z

jag tror inte att det spelar någon roll, men jag hade nog valt alternativ ett, känns dumt att använda "not" i sitt vilkor.

Permalänk: https://www.webforum.nu/p/1164128

## #3 — Fredde Mannen, 2003-09-22T11:40Z

Re: Do until Rs.Eof  eller Do while not Rs.Eof?

> **pRob3 skrev:**
>
> Do until Rs.Eof  eller Do while not Rs.Eof vilket är det bästa för servern/snabbast?

Spelar nog ingen roll, rent prestanda mässigt! Frågan är bara vilken man vill använda sig av... 

Av ren vana använder jag Do Until Rs.Eof

Permalänk: https://www.webforum.nu/p/1164133

## #4 — m_soderlund, 2003-09-22T11:42Z

..eeeeller varför inte skippa Do-loopen och Recordset helt och köra med [GetRows()](http://www.dileno.hel.nu/asp/default.asp?id=2) som är mycket snabbare? En version med paging finns där också. :D

Permalänk: https://www.webforum.nu/p/1164136

## #5 — @nders, 2003-09-22T11:51Z

Personlig reflektion:

GetRows() går fetbort!
Det är alldeles för klurigt att arbeta med, så den lilla prestandavinst man eventuellt kan göra, gör det inte värt all extra utvecklingstid om man har en applikation med mycket data.

Mitt tips är: gör det enkelt.
Jaga inte millisekunder på fel ställe, det finns andra ställen att optimera på, som garanterat ger mer vinst.

Jag har arbetat i en tung applikation i tre år nu, där modulen som hanterar databastrafiken endast använder arrays för att skyffla data, och det är ett helvete när man är tvungen att ändra på en join inne i en komponent, och helt helt plötsligt är alla arrayplatser förskjutna så ingenting fungerar.

Mvh

Permalänk: https://www.webforum.nu/p/1164139

## #6 — Engine^, 2003-09-22T12:13Z

Håller med **@nders** där. Undvik strängsammanlänkning i loopar och sådana hemskheter istället. Själv använder jag mig alltid av *While Not rs.EOF ... Wend*, som jag tycker är smidigast.

Permalänk: https://www.webforum.nu/p/1164159

## #7 — @nders, 2003-09-22T12:54Z

För att svara på originalfrågan också:

Jag *har för mig* att Charles Carroll vid något tillfälle för x antal år sedan berättat (kan ha varit i ett mail, eftersom jag inte hittar källan på nätet), att While - Wend-loopen är något snabbare än do - loop. Jag minns dock inte varför.

Jag använder while-wend eftersom jag alltid gjort det.
Jag började nog med det p.g.a. ovanstående anledning. När Charles Carroll talar lyssnar man. :)

Permalänk: https://www.webforum.nu/p/1164184

## #8 — m_soderlund, 2003-09-22T12:58Z

Intressant, @nders och Engine^! Dock kan ju GetRows() ge stora prestandavinster ju fler poster man har i en tabell, eller?
Och detta med att arrayerna är förskjutna - jag tycker inte att det har varit något stort problem för mig. (Ok, @nders jobbar troligtvis på en helt annan nivå...?) Det är ju nästan enbart att ändra talen med +1, +2, +3 eller vad det nu kan vara?

Charles Carroll driver tydligen bland annat [Learnasp.com](http://www.learnasp.com/learnasp/). Var bara tvungen att söka.. ;)

Permalänk: https://www.webforum.nu/p/1164188

## #9 — niko, 2003-09-22T13:17Z

> **m_soderlund skrev:**
>
> Dock kan ju GetRows() ge stora prestandavinster ju fler poster man har i en tabell, eller?

Jag skulle nog säga att det ger vinster framförallt om man *förflyttar* sig mycket i ett recordset. Dock måste ju data på nåt sätt komma in i arrayen/matrisen vilket medför att *GetRows* internt naturligtvis gör nån form av do-while-not-rc.eof-loop som antagligen inte är så himla mycket snabbare än samma loop direkt i ADO:n.

Permalänk: https://www.webforum.nu/p/1164206

## #10 — mikul, 2003-09-22T13:18Z

> **Engine^ skrev:**
>
> Håller med **@nders** där. Undvik strängsammanlänkning i loopar och sådana hemskheter istället. Själv använder jag mig alltid av *While Not rs.EOF ... Wend*, som jag tycker är smidigast.

Håller med i på båda svaren :)

Permalänk: https://www.webforum.nu/p/1164207

---

Tråden på webben: https://www.webforum.nu/amne/asp/86633-do-until-rs-eof-eller-do-while-not-rs-eof
