webForumDet fria alternativet

GetRows

ASP

27 svar · 536 visningar · startad av Poffe

Medlem sedan apr. 20022 743 inlägg
Frågan#1

Hejsan

har ett problem med getRows, den väljer bara sista posten i databasen.

Set RS = Connect.Execute(sSQL)
	
		If Not RS.EOF Then 
			arrUpptagen = RS.GetRows() 
			
			'Do until RS.EOF
			'	Response.Write RS("Start_Date") & "<br>"
			'	RS.moveNext
			'Loop
		End If
	
	RS.Close
	Set RS = Nothing

När man väljer att den ska skriva ut alla poster så funkar det men med getRows väljer den bara sista, nån som vet varför?

Medlem sedan mars 20025 907 inlägg
#2

Hur skriver du ut innehållet ur arrUpptagen sen då?

Medlem sedan apr. 20003 174 inlägg
#3

Hur ser din SQL-sats ut?

Notera att loopen ser helt olika ut när du använder GetRows.. ;)

Medlem sedan apr. 20022 743 inlägg
#4

"SELECT Start_Date, End_Date FROM tabell"

Medlem sedan juni 200032 967 inlägg
#5

Peeer skrev:

Hur skriver du ut innehållet ur arrUpptagen sen då?

Medlem sedan apr. 20022 743 inlägg
#6

Peeer skrev:

Hur skriver du ut innehållet ur arrUpptagen sen då?

problemet är inte att den inte skriver ut utan att den bara får in sista posten och inte alla

Medlem sedan apr. 20022 743 inlägg
#7

grejen är ju det att det funkar om man använder en vanlig loop (den som är i första koden) men inte getRows

Medlem sedan apr. 20003 174 inlägg
#8

Detta borde fungera då:

[RED]sSQL = "SELECT Start_Date, End_Date FROM tabell"
Set RS = Connect.Execute(sSQL)
	If Not RS.EOF Then arrUpptagen = RS.GetRows() 
RS.Close : Set RS = Nothing

If IsArray(arrUpptagen) Then

	For i = 0 To UBound(arrUpptagen,2)
		Response.Write arrUpptagen(0,i) &"<br>"& arrUpptagen(1,i) &"<br>"
	Next
	Erase arrUpptagen
			
End If[/RED]
Medlem sedan apr. 20022 743 inlägg
#9

jo men grejen är ju att det är så vi skrivit nu ;)

Medlem sedan apr. 20003 174 inlägg
#10

Aha, ok.. fattade inte det. ;)

Kör några Else-satser på vägen för att kolla var det falerar..

Medlem sedan apr. 20022 743 inlägg
#11

har suttit typ en timme nu och sökt fel, enda felet är at den bara lägger in sista posten ur databasen och det kan ju inte vara påså många ställen det kan gå fel då, eller?

Medlem sedan apr. 20003 174 inlägg
#12

Poffe skrev:

..enda felet är at den bara lägger in sista posten ur databasen..

Lägger in?
Menar du hämtar..?

Och du är säker på att det finns tillräckligt med poster i databasen?

Medlem sedan apr. 20022 743 inlägg
#13

jo, hämtar menar jag ;)

ja, när man inte kör med getrows får man ut alla 10 poster och kör man med getrows får man bara ut sista

Medlem sedan apr. 20003 174 inlägg
#14

Hur ser din GetRows-kod ut?

Medlem sedan apr. 20022 743 inlägg
#15

vilken menar du?

denna använder jag för att hämta

Set RS = Connect.Execute(sSQL)
		If Not RS.EOF Then arrUpptagen = RS.GetRows() 
	RS.Close : Set RS = Nothing

den du skrev alltså...

Medlem sedan apr. 20003 174 inlägg
#16

Ok, testade du med hela koden som jag visade här tidigare?

Medlem sedan mars 20015 287 inlägg
#17

Vet inte om jag fattar det hela rätt. Men ska du alltså både ta ut RS.GetRows() samt loopa ut det hela? Varför i så fall?

Men men,

Set RS = Connect.Execute(sSQL)
	
		If Not RS.EOF Then 
			arrUpptagen = RS.GetRows() 
			RS.moveFirst
			Do until RS.EOF
				Response.Write RS("Start_Date") & "<br>"
				RS.moveNext
			Loop
		End If
	
	RS.Close
	Set RS = Nothing

Eller är det i arrayen alla poster inte kommer in i?
Då lyder följdfrågan, hur vet du det? Är du säker på det?

Medlem sedan apr. 20022 743 inlägg
#18

nej, jag vill endast ta ut getRows men dåfunkar det ju inte. När jag loopar funkar det.

Medlem sedan mars 20015 287 inlägg
#19

Oki, då är jag med, hur är du säker på att det bara är sista posten i den, skriver du ut den rätt? (Arrayen alltså?)

Medlem sedan apr. 20003 174 inlägg
#20

Testa att använda denna:

[RED]sSQL = "SELECT Start_Date, End_Date FROM tabell"
Set RS = Connect.Execute(sSQL)
	If Not RS.EOF Then
		arrUpptagen = RS.GetRows() 
	Else
		Response.Write "Databasen gav inget värde.."
	End If
RS.Close : Set RS = Nothing

If IsArray(arrUpptagen) Then

	For i = 0 To UBound(arrUpptagen,2)
		Response.Write arrUpptagen(0,i) &"<br>"& arrUpptagen(1,i) &"<br>"
	Next
	Erase arrUpptagen
			
Else
	Response.Write "Ingen Array skapades.."

End If[/RED]
256 ms totalt · 3 externa anrop · v20260731065814-full.265f3fdd
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)