---
title: "Långsamt att hämta ur databas"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/73952-långsamt-att-hämta-ur-databas"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "kilpin"
published: "2003-04-12T23:48:17.000Z"
updated: "2003-04-13T13:22:01.000Z"
replies: 9
views: 410
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/73952-långsamt-att-hämta-ur-databas"
---

# Långsamt att hämta ur databas

## #1 — kilpin, 2003-04-12T23:48Z

Hej,
jag håller på med en enkel databas till mina CD-skivor. Det går fint förutom att när man skall visa alla skovar (för tillfället 181 st inladga) så tar det väldigt lång tid att hämta listan.

Så här ser min kod ut (tagit bort massa HTML):

```php
<!-- #include file="adovbs.inc" -->
<%	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & 				  	Server.MapPath("cdskivor.mdb"))
	Set RecSet = Server.CreateObject("ADODB.Recordset")
%>

<% Visabook = "SELECT * FROM album ORDER BY artist" 
   RecSet.Open Visabook, Connect, adOpenStatic, adLockOptimistic
%>

MASSA HTML

<%
	Dim nummer
	nummer = 1
	Do Until RecSet.EOF

%>

<% response.write(nummer) %>.</td>
<a href='<% =RecSet("url") %>' target="_blank"><%=RecSet("artist")%></a></td>
<%=RecSet("title")%>
<%=RecSet("format")%>
<%=RecSet("extra")%>

  <%
	nummer = nummer + 1
  	RecSet.MoveNext
	Loop 
	RecSet.Close
	%>
```

 

Ser någon några saker som kan medför att det går sakta eller är det helt enkelt acceptabelt när man ska hämta 181 st objekt?
Det tar upp till 30 sek att hämta och det när jag kör lokalt! 

Mvh Ante

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

## #2 — kilpin, 2003-04-12T23:50Z

Nu har jag lagt ut online också och testar och det tar en väldans tid där också...

Kolla <https://www.ante.nu/cdskivor>

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

## #3 — Mr. N., 2003-04-12T23:58Z

Fem sekunder tar det för mig, inte så fasligt lång tid.

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

## #4 — Poffe, 2003-04-13T00:16Z

tar drygt 4 sek för mig..

ta bort alla \<%  %\>, eller iallafall så många som möjligt, och använd istället Response.Write. Varje gång du öppnar en asp -tagg så tar den kräm från servern

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

## #5 — mikul, 2003-04-13T00:31Z

Detta borde nog snabba upp det lite ;)

```
<%    
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open("provider=microsoft.jet.oledb.4.0; data source ="& Server.MapPath("cdskivor.mdb"))

Visabook = "SELECT * FROM album ORDER BY artist" 
Set recset = Connect.execute(visabook)
%>

MASSA HTML

<%
Dim nummer
nummer = 1
While not RecSet.EOF

	response.write(nummer) &".</td>"&_
		"<a href='"& RecSet("url") &"' target="_blank">"&_
		RecSet("artist") &"</a></td>"& RecSet("title") & RecSet("format") &_
		RecSet("extra")

	nummer = nummer + 1
	RecSet.MoveNext
Wend 

RecSet.Close
Set RecSet = Nothing
%>
```

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

## #6 — solbulle, 2003-04-13T08:33Z

Du skriver ut en massa htmlkod som du inte (ännu) utnyttjar. Lägger du även font o dylikt i en stilmall får du ner koden.

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

## #7 — DavidB, 2003-04-13T08:54Z

Testa att använda dig utav GetRows, vet inet om det snabbar upp så jättemycket men det känns snabbare.

Sen kan du använda Response.Buffer = True och Option Explicit men då måste du dim:ma alla variabler. Det kanske itne snabbar upp hämtningen från databasen så mycket men det snabbar upp "köringen" på sidan

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

## #8 — kilpin, 2003-04-13T10:18Z

Att det är onödig HTML vet jag men jag tror inte att det hade så mycket med saken att göra. Ett stylesheet snabbar bara upp marginellt.

Jag har följt några av era råd med tillfredsställande resultat. Nu går det snabbare. Så här ser det ut nu:

```

<%    
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open("provider=microsoft.jet.oledb.4.0; data source ="& Server.MapPath("cdskivor.mdb"))

Visabook = "SELECT * FROM album ORDER BY artist" 
Set recset = Connect.execute(visabook)
%>

MASSA HTML

                <%
Dim nummer
nummer = 1
While not RecSet.EOF

	response.write "<td width='25' valign='top'>" & (nummer) &".</td>"&"<td width='183' valign='top'>"&_
		"<a href='"& RecSet("url") &"' target='_blank'>"&_
		RecSet("artist") &"</a></td><td width='349' valign='top'>"& RecSet("title") & "</td>  <td width='123' valign='top'>" & RecSet("format") & "</td></tr>"&_
		"<tr><td colspan='4'><i>" & RecSet("extra")& "</i></td></tr><tr><td colspan='4'>&nbsp;</td></tr>"

	nummer = nummer + 1
	RecSet.MoveNext
Wend 

RecSet.Close
Set RecSet = Nothing
%>
```

Rätt mycket \<td\> och \<tr\> taggar men det är nog ett måste. Eller kanske inte ett måste men sidan är ju för mitt eget bruk så det är inte så viktigt att koden är snygg. Dessutom blir jag vansinning på dreamweaver som ändrar koden så fort jag öppnar sidan i den.

Kanske består även en del av problemet av att jag sitter med Telias ADSL som inte funkar så bra här där jag bor (de har de erkänt).

Tack alla för hjälpen!

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

## #9 — KoTTeN, 2003-04-13T11:19Z

För mig tog det någon sekund att köra sidan på alla cd skivor.

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

## #10 — solbulle, 2003-04-13T13:22Z

Jag får fram koden snabbt, det är bara webläsaren som tar en stund på sig att "skriva ut den".

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/73952-långsamt-att-hämta-ur-databas
