webForumDet fria alternativet

SQL load

6 svar · 180 visningar · startad av blodigeln

blodigelnMedlem sedan apr. 200318 inlägg
#1

hej det förra problemet ordnadesig tack sebbe !

nu har jag ett annat litet problem :)

<% SQL = "SELECT top 5 * FROM login where quote = 'Ja' order by id desc "
set Rs = Databas.Execute(SQL)
do until rs.eof
%><%=rs("namn")%><br>
<%
Rs.Movenext
Loop

Databas.Close
Set Databas = Nothing
%>

får jag felet
Feltyp:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
[Microsoft][Drivrutin för ODBC Microsoft Access] Typblandningsfel i villkorsuttryck.
/ae/index.asp, line 64

line 64 e sql raden ovan :D
jag har även testat med True mem det funkade inte heller

JosefMedlem sedan mars 20023 123 inlägg
#2

Var för quote för datatyp?

blodigelnMedlem sedan apr. 200318 inlägg
#3

oj kanske lite smart o skriva ;D det är en Ja/Nej

JosefMedlem sedan mars 20023 123 inlägg
#4

Borde det inte bli:

SQL = "SELECT top 5 * FROM login WHERE quote = true ORDER BY id DESC"
blodigelnMedlem sedan apr. 200318 inlägg
#5

tack funka :)

JosefMedlem sedan mars 20023 123 inlägg
#6

Här kommer en liten optimering av din kod:

<%
SQL = "SELECT top 5 * FROM login WHERE quote = true ORDER BY id DESC"
Set Rs = Databas.Execute(SQL) 
Do Until Rs.EOF 
     Response.Write(Rs("namn") & "<br>")
     Rs.Movenext 
Loop 

Databas.Close
Set Databas = Nothing 
%>

Ju färre kontext-byten desto snabbare kod. ;)

mikulMedlem sedan aug. 2001810 inlägg
#7

Josef skrev:

Ju färre kontext-byten desto snabbare kod. ;)

Word!
Sen kan man även stänga recordsetet när man är klar ;)

<%
  SQL = "SELECT top 5 * FROM login WHERE quote = true ORDER BY id DESC"
  Set Rs = Databas.Execute(SQL) 
  Do Until Rs.EOF 
        Response.Write(Rs("namn") & "<br>")
        Rs.Movenext 
  Loop 

  Rs.Close : Set Rs = Nothing
  Databas.Close : Set Databas = Nothing 
%>
131 ms totalt · 3 externa anrop · cache AV · v20260731051352-full.56cc9887
0 ms — hämta statistik (cache)
0 ms — hämta forumlista (cache)
129 ms — hämta tråd, inlägg och bilagor (db)