Idag när jag hämtar data...så öppnar jag databasen...sen så lägger jag in det i html-dokumentet och när jag är färdig så stänger jag det...likt:
Förnamn: <% =RecSet("Namn")%>
etc
Sen har jag läst och hört många säga att man ska stänga av databasen så snabbt som möjligt...och det snabbaste sättet jag kom fram till var att läsa in alla recset in i variabler. Dessa variabler används sedan i html-dokumentet:
Förnamn: <% =fNamn%>
etc.
Ökar detta prestandan mycket? Finns det nåt annat sätt som ni använder er av?
Sökte på det ordet lite men blev inte klokare...man läser in datan in i en array...vad är mening med det? Ska man använda denna metod om vid presentationssidor i en community?
Getrows dumpar in tabellerna från din databasförfrågan in i en tabell....
Att använda sig av bortkopplade recordsets är ungefär likadand, fast man behåller recordsets'es istället för att spara värderna i en array.
Ett litet kodexempel?
inte sååå stor skillnad att loopa igen en array än ett recordset.
strSQL = "SELECT id, annons FROM annonser"
Set objConn = Server.CreateObject("ADODB.Connection")
objconn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Server.MapPath("/db-dir/db-file.mdb")
Set objRS = objConn.Execute(strSQL)
If objRS.EOF Then
arrRecordSet = ""
Else
arrRecordSet= objRS.GetRows
End If
objRS.Close
Set objRS = Nothing
objConn.Close
Set objConn = Nothing
If IsArray(arrRecordSet) Then
For I = 0 To UBound(arrRecordSet,2)
intId = arrRecordset(0,I)
strAnnons = arrRecordSet(1,I)
Response.Write "<A href="annonser.asp?aid=" & intId & ">" & _
strAnnons & "</A><BR>"
Next
Else
Response.Write "Inga poster hittades."
End If
Hoppas att du får lite ideer om hur du kan använda dig av .GetRows istället för den vanliga "segare" hämtningen *ler*
cya,
PatrikB
------------------
*Det jämnar ut sig sa han som sket i byxan och satte sig ned*