Kom på vad det var nu, hade glömt att skriva till
if rs("last") = 0 then
[B]set rs3 = Server.CreateObject("adodb.Recordset")[/B]
stm2 = "UPDATE users SET mailbox=mailbox - 1 WHERE users.ID="&UID
Set rs3 = connection.execute(stm2)
rs3.close
DOH!
8 svar · 267 visningar · startad av G8
Hmm, varför blir det så här, jag har ett recordset där jag bl. a. hämtar ut värdet "last". När jag senare ska använda det värdet för att kolla om jag ska göra ett RS till, så får jag felmeddelande på raden som avslutar det sista RS'et...
Hur ska man annars avsluta om man inte kan göra så?
if rs("last") = 0 then
stm2 = "UPDATE users SET mailbox=mailbox - 1 WHERE users.ID="&UID
Set rs3 = connection.execute(stm2)
[B]rs3.close[/B]
Kom på vad det var nu, hade glömt att skriva till
if rs("last") = 0 then
[B]set rs3 = Server.CreateObject("adodb.Recordset")[/B]
stm2 = "UPDATE users SET mailbox=mailbox - 1 WHERE users.ID="&UID
Set rs3 = connection.execute(stm2)
rs3.close
DOH!
Men du behöver inte skapa ett recordset vid en update.
if rs("last") = 0 then
stm2 = "UPDATE users SET mailbox=mailbox - 1 WHERE users.ID="&UID
connection.execute(stm2),,128
if rs("last") = 0 then
stm2 = "UPDATE users SET mailbox=mailbox - 1 WHERE users.ID="& UID
connection.execute(stm2) ,,128
Hittade detta...
128 innebär att ADO inte skapar något recordset. Om man inte anger det så skapas ett tomt och stängt recordset när man gör execute på kommandon som inte returnerar någon post.
Tack för hjälpen
//G8
precis