testa detta...
<%
strNamn = rs("namnet")
if strNamn <> "" then
Response.Write(strNamn)
end if
%>
Har för mig att vissa databashanterare rensar ett värde efter första gången det läses...
14 svar · 433 visningar · startad av Wiberg
<% if rs("namnet") <> "" then %>
<%=rs("namnet")%>
<% end if %>
...skriver inte ut namnet men enbart...
<%=rs("namnet")%>
...gör det. Hur kan det komma sig?
testa detta...
<%
strNamn = rs("namnet")
if strNamn <> "" then
Response.Write(strNamn)
end if
%>
Har för mig att vissa databashanterare rensar ett värde efter första gången det läses...
<% if rs("namnet") <> "" then %>
hej
<%=rs("namnet")%>
<% end if %>
...skriver ut "hej" så den går rätt i if-satsen iaf.
Är det chili-asp eller något annat mysko?
ekke_t skrev:
testa detta...
<% strNamn = rs("namnet") if strNamn <> "" then Response.Write(strNamn) end if %>Har för mig att vissa databashanterare rensar ett värde efter första gången det läses...
Tydligen var det felet. Beror det på val av databas?
Vilken databas använder du? Access?
Ja, tillfälligt.
ok... jag är inte säker på detta men jag har för mig att access beter sig på exakt det sättet... åtminstone äldre versioner...
SQL Server gör det inte iaf... men det är god sed att alltid tilldela värden man plockar ur ett rekordset till en variabel så att man inte behöver läsa ur recordsetet onödigt många gånger...
recset("namnet") är en text eller hur?
I access/ASP något av dom iallafall kan "bara ladda" texten en gång.. därför måste du lagra all "text" i en annan variabel PM har man inte samma problem med.
mvh
voigtann1 skrev:
recset("namnet") är en text eller hur?
I access/ASP något av dom iallafall kan "bara ladda" texten en gång.. därför måste du lagra all "text" i en annan variabel PM har man inte samma problem med.mvh
namnet använde datatypen PM (memo).
ekke_t skrev:
SQL Server gör det inte iaf...
Jodå, det händer. Det är snarare ADO som är boven, så visst kan man råka ut för samma sak om man använder datatypen text i SQL Server.
tips: Lägg in värdet i en variabel först.
@nders skrev:
ekke_t skrev:
SQL Server gör det inte iaf...
Jodå, det händer. Det är snarare ADO som är boven, så visst kan man råka ut för samma sak om man använder datatypen text i SQL Server.
Har råkat ut för det ofta med SQL Server. Det enda felmeddelande man får är "Errors occured". Det har vid många av dessa tillfällen även spelat roll i vilken ordning man använder "kolumnerna" i recordsetet.
Lennholm skrev:
Har råkat ut för det ofta med SQL Server. Det enda felmeddelande man får är "Errors occured". Det har vid många av dessa tillfällen även spelat roll i vilken ordning man använder "kolumnerna" i recordsetet.
Just 'errors occurred' är ju ett väldigt informativt felmeddelande, men jag har upplevt samma sak. Jag tar för vana (om jag arbetar med fält av typen text i SQL Server) att både specificera alla fält i min SELECT-fråga, med textfälten sist, samt skapa variabler för alla fält, i den ordning de står i SQL-frågan. Sedan är det bara att använda variablerna.
Microsoft brukar väl säga "This behaviour is by design" om denna och liknande saker, men visst kan man tycka att det är "by bad design". ;)
mvh