jag satt inatt och knackade lite kod och märkte att jag inte riktigt visste var jag måste stänga ett recordset i en case select. databas-kopplingen sker i case else som är det första som inträffar. då skrev jag denna lilla kodsnutt:
[red]<%
function rsClose ()
if isnull ( rs ( "cfg_dontask" ) ) then
rs.close
set rs = nothing
end if
con.close
set con = nothing
end function
%>[/red]
och undrar om det är riktigt att göra på det viset.
LarsGMedlem sedan dec. 200012 464 inlägg Eftersom du inte returnerar något värde så är det mer korrekt att använda en sub. (Petitess)
Det är värre att du använder globala variabler. Skicka rs och con som parametrar och lägg kontrollen med isnull utanför rutinen. Det gör att du kan utnyttja rutinen även i andra sammanhang.
hur skulle den subrutinen se ut då?
[red]<%
if not isnull ( rs ( "cfg_dontask" ) ) then call ( rsClose )
sub rsClose ( rs, con )
rs.close
set rs = nothing
con.close
set con = nothing
end sub
%>[/red]
typ eller?
har inte testat :)
LarsGMedlem sedan dec. 200012 464 inlägg Ja, nästan
if not isnull ( rs ( "cfg_dontask" ) ) then call rsClose(rs,con)
funkar ju utmärkt, eller, hur kan jag kontrollera att ett recordset är stängt?
känner mig lite fånig:
[red] sub rsClose ( rs, con )
rs.close
set rs = nothing
con.close
set con = nothing
[b]response.write rs ( "cfg_dontask" )[/b]
end sub[/red]
blir det fel är ju recordsettet stängt :)
ok... det finns altså kod för sånt... hade jag ingen aning om thnx