---
title: "optimera hämtning av meny från db"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/100747-optimera-hämtning-av-meny-från-db"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "timedia"
published: "2004-04-01T10:22:41.000Z"
updated: "2004-04-02T07:44:19.000Z"
replies: 1
views: 146
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/100747-optimera-hämtning-av-meny-från-db"
---

# optimera hämtning av meny från db

## #1 — timedia, 2004-04-01T10:22Z

Har en meny där rubrikerna ligger i db sorterade under vanster1, vanster 2 o.s.v. När jag ska hämta dom verkar det orimligt att skapa nya recset för varje undermeny? Hur fixar jag detta med mindre och mer optimal kod?

```
Sub menylistning()

Set RS = Server.CreateObject("ADODB.Recordset")
Visa = "SELECT * FROM Menyn WHERE Rub = 'vanster1'"
   RS.Open Visa, Connect 

Response.Write "<table border='0' width='150' height='*' cellpadding='0' cellspacing='0' class='t'><tr><td width='150' height='*' bgcolor='#FFFFFF'><img src='rub/bilar.gif' width='150' height='20' border='0'></td></tr>"

DO UNTIL RS.EOF

Response.Write "<tr><td width='150' height='*' bgcolor='#FFFFFF' background='bilder/bak_ruta_rob.gif'>&nbsp;&nbsp;<img src='bilder/knapp.gif' width='8' height='7' border='0'>&nbsp;<a href='nya_bilar.htm'>" & RS("Kategori") & "</a></td></tr>"
  RS.MoveNext
  If Rs.EOF Then
Response.Write "<tr><td width='150' height='20' bgcolor='#FFFFFF' background='bilder/rutaned_rob.gif' valign='top'>&nbsp;</td></tr></table><br><br>"
end if

Loop

Set RS = Server.CreateObject("ADODB.Recordset")
Visa = "SELECT * FROM Menyn WHERE Rub = 'vanster2'"
   RS.Open Visa, Connect 

Response.Write "<table border='0' width='150' height='*' cellpadding='0' cellspacing='0' class='t'><tr><td width='150' height='*' bgcolor='#FFFFFF'><img src='rub/delar_tillb.gif' width='150' height='20' border='0'></td></tr>"

DO UNTIL RS.EOF

Response.Write "<tr><td width='150' height='*' bgcolor='#FFFFFF' background='bilder/bak_ruta_rob.gif'>&nbsp;&nbsp;<img src='bilder/knapp.gif' width='8' height='7' border='0'>&nbsp;<a href='nya_bilar.htm'>" & RS("Kategori") & "</a></td></tr>"
  RS.MoveNext
  If Rs.EOF Then
Response.Write "<tr><td width='150' height='20' bgcolor='#FFFFFF' background='bilder/rutaned_rob.gif' valign='top'>&nbsp;</td></tr></table><br><br>"
end if

Loop

[B]o.s.v. med vanster3
o.s.v. med vanster4
o.s.v.[/B]

RS.Close: Set rs = nothing

End Sub
```

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

## #2 — Engine^, 2004-04-02T07:44Z

En förkortad variant går att göra, men om det är någon större optimering vete tusan.
Frågan är om det ens blir rätt ;)

```
Sub MenyListning()
  Dim objRS, strSql, strLast, strEnd

  Set objRS = Server.CreateObject("ADODB.Recordset")

  strSql = "SELECT Rub, Kategori FROM Menyn ORDER BY Rub"

  objRS.Open strSql, Connect

  blnEnd = False
  strLast = ""

  While Not objRS.EOF
    If Not strLast = objRS(1) Then
      Response.Write "<table border='0' width='150' height='*' cellpadding='0' cellspacing='0' class='t'>" & _
        "<tr><td width='150' height='*' bgcolor='#FFFFFF'>" & _
        "<img src='rub/delar_tillb.gif' width='150' height='20' border='0'></td></tr>"

      blnEnd = True
    End If

    Response.Write "<tr><td width='150' height='*' bgcolor='#FFFFFF' background='bilder/bak_ruta_rob.gif'>" & _
        "  <img src='bilder/knapp.gif' width='8' height='7' border='0'>" & _
        " <a href='nya_bilar.htm'>" & objRS(0) & "</a></td></tr>"

    strLast = objRS(1)

    objRS.MoveNext

    If blnEnd Then
      Response.Write "<tr><td width='150' height='20' bgcolor='#FFFFFF' background='bilder/rutaned_rob.gif' valign='top'> </td></tr></table><br><br>"

      blnEnd = False
    End If
  Wend

  objRS.Close

  Set objRS = Nothing
End Sub
```

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/100747-optimera-hämtning-av-meny-från-db
