webForumDet fria alternativet

GetRows

27 svar · 536 visningar · startad av Poffe

PoffeMedlem sedan apr. 20022 743 inlägg
#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?

PeeerMedlem sedan mars 20025 907 inlägg
#2

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

PalleMedlem 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.. ;)

PoffeMedlem sedan apr. 20022 743 inlägg
#4

"SELECT Start_Date, End_Date FROM tabell"

@ndersMedlem sedan juni 200032 969 inlägg
#5

Peeer skrev:

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

PoffeMedlem 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

PoffeMedlem 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

PalleMedlem 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]
PoffeMedlem sedan apr. 20022 743 inlägg
#9

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

PalleMedlem 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..

PoffeMedlem 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?

PalleMedlem 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?

PoffeMedlem 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

PalleMedlem sedan apr. 20003 174 inlägg
#14

Hur ser din GetRows-kod ut?

PoffeMedlem 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å...

PalleMedlem sedan apr. 20003 174 inlägg
#16

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

solbulleMedlem 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?

PoffeMedlem 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.

solbulleMedlem 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å?)

PalleMedlem 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]
146 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
142 ms — hämta tråd, inlägg och bilagor (db)