---
title: "hämtning från databas"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/157009-hämtning-från-databas"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Vinnaren"
published: "2007-02-09T19:26:26.000Z"
updated: "2007-02-11T13:41:35.000Z"
replies: 6
views: 319
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/157009-hämtning-från-databas"
---

# hämtning från databas

## #1 — Vinnaren, 2007-02-09T19:26Z

hej

jag har fått problem med följande kod:

```
				If NOT objRS5.EOF OR objRS6.EOF Then 				
					Response.Write "<div id=""startsidan_silly"">"						
						Response.Write "<img alt=""Silly Season"" title=""Silly Season"" src=""/bilder/silly.png"" />"
						
												If NOT objRS5.EOF THEN
							Response.Write ""&objRS5("nyRubrik")&""
						END IF
						
												If NOT objRS6.EOF THEN
						Do While Not objRS6.EOF			

							Set objRS7 = objConn.Execute("SELECT * FROM klubbar WHERE lagID= "&objRS6("nyKlubbID"))		
								
								If NOT objRS7.EOF THEN
									Response.Write "<br />"&objRS7("lagNamn")&""
								END IF
								
						objRS6.MoveNext
						Loop
						objRS6.Close 
						Set objRS6 = nothing 

						END IF
						
					Response.Write "</div>"
				END IF
```

 

Det är första raden jag har problem med tror jag. 

```
If NOT objRS5.EOF OR objRS6.EOF
```

 
Alltså när inte objRS5 eller objRS6 är tom så ska det visas, men det vill inte fungera. har provat med bara

```
If NOT objRS6.EOF
```

 
Då fungerar det, men när jag har bägge med så kommer inget fram. 
Hur löser jag detta?

Tacksam för all hjälp jag kan få :OO

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

## #2 — emission, 2007-02-09T19:50Z

```
if NOT objRS5.EOF OR objRS6.EOF
```

betyder "Om objRS5 inte är tom eller om objRS6 är tom"

```
If NOT objRS5.EOF OR NOT objRS6.EOF
```

eller

```
If NOT (objRS5.EOF AND objRS6.EOF)
```

..är det som gäller

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

## #3 — Vinnaren, 2007-02-09T20:20Z

tack emission, det fungerade   :bire 

har nu fått ett annat problem istället   :r 

har koden:

```

        IF NOT Request.QueryString("arID") = "" THEN
            Set objRS = objConn.Execute("SELECT spelare_statistik.statID, spelare_statistik.playerID, spelare_statistik.statSasongID, spelare_statistik.klubbID, spelare_statistik.klubbNamn, spelare_statistik.statMatcher, spelare_statistik.statMal, spelare_statistik.statAssist, spelare_statistik.statUtvisad, spelare_statistik.statPlusMinus, spelare_statistik.statRaddning, spelare_statistik.statInMal, spelare_statistik.statNollor, nhl_sasonger.arID, nhl_sasonger.arAr1, nhl_sasonger.arAr2 FROM nhl_sasonger INNER JOIN spelare_statistik ON nhl_sasonger.arID = spelare_statistik.statSasongID WHERE arID="&Request.QueryString("arID")&" ORDER BY arAr1 DESC, arAr2 DESC, statMal + statAssist DESC")

        ELSE
            Set objRS = objConn.Execute("SELECT spelare_statistik.statID, spelare_statistik.playerID, spelare_statistik.statSasongID, spelare_statistik.klubbID, spelare_statistik.klubbNamn, spelare_statistik.statMatcher, spelare_statistik.statMal, spelare_statistik.statAssist, spelare_statistik.statUtvisad, spelare_statistik.statPlusMinus, spelare_statistik.statRaddning, spelare_statistik.statInMal, spelare_statistik.statNollor, nhl_sasonger.arID, nhl_sasonger.arAr1, nhl_sasonger.arAr2 FROM nhl_sasonger INNER JOIN spelare_statistik ON nhl_sasonger.arID = spelare_statistik.statSasongID ORDER BY arAr1 DESC, arAr2 DESC, statMal + statAssist DESC")

        END IF

Do While ar=objRS("arAr1")
```

 
Nu vill jag att den ska loopa runt sålänge ar=objRS("arAr1") eller så länge det det finns några poster i databasen. 
Det fungerar så länge Request.QueryString("arID") = "" (är tom) men när den får ett värde så kommer den hämtade texten fram plus ett felmeddelande: 

error '80020009' 
Exception occurred. 

index.asp, line 1126 

på raden: 
Do While ar=objRS("arAr1") 

Hur löser jag detta så det fungerar både när arID har ett värde och när den är tom??   :stud

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

## #4 — doggelito, 2007-02-09T22:41Z

"Man" brukar lägga till en 'if' efter en databashämtning, detta utifall om recordsetet är tomt.
Sen ett tips: använd alias på tabellnamnen så slipper selecten bli så himla lång och svårläst! :)

```
IF NOT Request.QueryString("arID") = "" THEN
	Set objRS = objConn.Execute("SELECT s.statID, s.playerID, s.statSasongID, s.klubbID, s.klubbNamn, s.statMatcher, s.statMal, s.statAssist, s.statUtvisad, s.statPlusMinus, s.statRaddning, s.statInMal, s.statNollor, n.arID, n.arAr1, n.arAr2 FROM nhl_sasonger n INNER JOIN spelare_statistik s ON n.arID = s.statSasongID WHERE n.arID="&Request.QueryString("arID")&" ORDER BY n.arAr1 DESC, n.arAr2 DESC, statMal + statAssist DESC")
ELSE
	Set objRS = objConn.Execute("SELECT s.statID, s.playerID, s.statSasongID, s.klubbID, s.klubbNamn, s.statMatcher, s.statMal, s.statAssist, s.statUtvisad, s.statPlusMinus, s.statRaddning, s.statInMal, s.statNollor, n.arID, n.arAr1, n.arAr2 FROM nhl_sasonger n INNER JOIN spelare_statistik s ON n.arID = s.statSasongID ORDER BY n.arAr1 DESC, n.arAr2 DESC, statMal + statAssist DESC")
END IF

IF NOT objRS.EOF THEN
     DO ...

END IF
```

  

Sen hajjar jag inte riktigt din order by: ... statMal + statAssist DESC
Kan man verkligen skriva så?! :q
Det har jag aldrig sett i alla fall! :stud

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

## #5 — Vinnaren, 2007-02-10T09:41Z

hmm, ok, jo, jag har en If objRS.EOF Then, men problemet är 
Do While ar=objRS("arAr1"), när inte Request.QueryString("arID") = "" så ska alla poster hämtas tills de är slut, men när Request.QueryString("arID") är tom så ska alla poster hämtas så länge strängen ar = den senaste post arAr1 (Do While ar=objRS("arAr1"))

Vet inte redigt hur jag ska lösa det hela  :OO

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

## #6 — doggelito, 2007-02-10T23:11Z

Du skulle kunna lösa det genom att loopa från början till slut oavsett recordset men att du i loopen kollar så att rätt id visas. :)

```
Do until objRs.Eof 
   If len(Request.QueryString("arID")) = 0 Or Request.QueryString("arID") = objRs("arID") Then
       ...
   End If
   objRs.MoveNext
Loop
```

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

## #7 — emission, 2007-02-11T13:41Z

Och stoppa ALDRIG in ett värde direkt från request i en SQL-sats! SQL Injection!

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/157009-hämtning-från-databas
