PoffeMedlem sedan apr. 20022 743 inlägg 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 Hur skriver du ut innehållet ur arrUpptagen sen då?
PalleMedlem sedan apr. 20003 174 inlägg 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 "SELECT Start_Date, End_Date FROM tabell"
PoffeMedlem sedan apr. 20022 743 inlägg
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 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 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 jo men grejen är ju att det är så vi skrivit nu ;)
PalleMedlem sedan apr. 20003 174 inlägg 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 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
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 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 Hur ser din GetRows-kod ut?
PoffeMedlem sedan apr. 20022 743 inlägg 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 Ok, testade du med hela koden som jag visade här tidigare?
solbulleMedlem sedan mars 20015 287 inlägg 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 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 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 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]